--- author: Florian Fischer lang: de theme: metropolis aspectratio: 169 header-includes: | \let\tightlist\relax --- ## {.standout} Herzlich Willkommen! Du kannst dich schon anmelden \texttt{[v]orname.nachname} und den Bildschirm ausschalten. ## \faIcon{chalkboard-teacher} Wiederholung: Zellbezüge Gib an welche Arten der Adressierung von Zellen (**Zellbezüge**) es gab. \vspace{0.5cm} \pause \begin{center} \begin{tabular}{| l | l |} \hline \Large \textbf{Relative} Adressierung & \Large A1 \\ \hline \Large \textbf{Absolute} \textcolor{red}{Zeilen}adressierung & \Large A\textbf{\$}1 \\ \hline \Large \textbf{Absolute} \textcolor{red}{Spalten}adressierung & \Large \textbf{\$}A1 \\ \hline \Large \textbf{Absolute} Adressierung & \Large \textbf{\$}A\textbf{\$}1 \\ \hline \end{tabular} \end{center} ## \faIcon{chalkboard-teacher} Wiederholung: Funktionen Welche \boldred{vordefinierten Funktion} bietet ein **TKS** an? \vspace{0.5cm} \pause \scalebox{1.8}{ \begin{tikzpicture}[scale=1.5] \node[draw=blue] at (-2, 0.3) {MITTELWERT()}; \node[draw=orange] at (-1.6, -0.3) {RUNDEN()}; \node[draw=yellow] at (-0.3, -0.1) {SUMME()}; \node[draw=gray] at (0, 0.5) {ANZAHL()}; \node[draw=teal] at (1.5, 0) {HEUTE()}; \node[draw=red] at (1.7, -0.5) {MAX()}; \end{tikzpicture} } ## \faIcon{chalkboard-teacher} Wiederholung: Zellbereiche Wie können ganze **Zellbereiche** leicht adressiert werden? \pause \begin{center} \boldred{\texttt{Start:Ende}} \end{center} ![](img/cell_range.png){.center} ## \faIcon{chalkboard-teacher} Wiederholung: Funktionswert Gegeben ist die nachfolgende Funktionsbeschreibung: \begin{tcolorbox}[colframe=gray] \begin{minipage}{0.9\textwidth} \textbf{\texttt{FINDEN(Suchtext; Text)}} \\ Sucht eine Zeichenfolge innerhalb einer anderen (Groß-/Kleinschreibung wird beachtet) \end{minipage} \end{tcolorbox} ::: {.columns align=center} :::: {.column width=60%} Gib an, welche Zahl sie als Ergebnis liefert, wenn die Formel **`=FINDEN("h"; "Hallo")`** eingegeben wird. :::: :::: {.column width=40%} \pause ![](img/not_found.png){.center height=33%} :::: ::: ## Funktionen ### Bisher Beziehungen in Tabellenkalkulationssystemen werden nur durch Zellbezüge dargestellt. ![](img/zellbezug.png){height=1cm .center} \pause ### Heute Grafische Verdeutlichung der Zusammenhänge (Trennung von Eingabe- und Ausgabedaten und Funktionen) \begin{itemize} \Large \item[]<2-> \boldred{$\rightarrow$ EVA-Prinzip} \pause \only<3> { \begin{tikzpicture}[remember picture, overlay] \node[draw=red, fill=bg, rotate=15] at (4cm, 0) {\LARGE Who the fuck is EVA?}; \end{tikzpicture}} \item[]<4> \textbf{$\rightarrow$ EVA} steht kurz für \textbf{Eingabe-Verarbeitung-Ausgabe} \end{itemize} ## Das EVA-Prinzip Ordne die nebenstehenden Begriffe richtig zu: ![](Copyrighted/eva.png) ## Funktionen Eine Funktion kann man sich als eine Art Maschine vorstellen, in die Daten eingegeben werden können. Die Maschine verarbeitet die Daten und gibt neue Daten aus. \begin{center} \scalebox{0.85}{ \begin{tikzpicture}[font=\large] \node (m) {\includegraphics[keepaspectratio, width=5cm]{Copyrighted/function_machine.png}}; \node (a1) at (-2.7,2.7) {3}; \draw[line width=1pt, -Triangle] (a1) to [bend left=50] (-1.8, 2.2); \only<1> { \node[opacity=0] (a2) at (3.5, 2.9) {4}; \draw[opacity=0, line width=1pt, -Triangle] (a2) to [bend right=30] (0, 2.2); \node[opacity=0] (a3) at (4, 2.2) {5}; } \only<2-> { \node (a2) at (3.5, 2.9) {4}; \draw[line width=1pt, -Triangle] (a2) to [bend right=30] (0, 2.2); \node (a3) at (4, 2.2) {5}; \draw[line width=1pt, -Triangle] (a3) to [bend right=60] (1.8, 2.2); } \only<3> { \node (17) at ($(m.south) + (2, 0.5)$) {17}; \draw[line width=1pt, -Triangle] (m.south) to [bend right=30] (17); } \end{tikzpicture} } \end{center} ## Funktionen In der Informatik verwendet man eine vereinfachte „Grafik“ zur Darstellung einer Funktion. \pause In dieser grafischen Darstellung sind die Datenflüsse gut nachzuvollziehen. \pause ![](img/dfd.png){height=4cm .center} \pause Man nennt diese Darstellung auch \boldred{Datenflussdiagramm}. ## \faIcon{pencil-alt} Datenflussdiagramme Für jede Funktion gibt es eine \boldred{grafische Darstellung}, ein \boldred{Datenflussdiagramm}. [Beispiel:]{.underline} Funktion `MITTELWERT(…)` \pause \begin{center} \scalebox{1.2}{ \begin{tikzpicture}[font=\large] \node[draw, line width=0.7pt, rounded corners=2, minimum width=4cm] (m) {\texttt{MITTELWERT}}; \node[above=0.5cm of m,xshift=-1.2cm] (p1) {a}; \node[above=0.5cm of m,xshift=1.2cm] (p2) {b}; \draw[line width=0.7pt, -Triangle] (p1) to (m.north -| p1); \draw[line width=0.7pt, -Triangle] (p2) to (m.north -| p2); \draw[line width=0.7pt, -Triangle] (m.south) -- ($(m.south) - (0, 0.5cm)$); \only<1-2> { \node[opacity=0, align=right, xshift=-4cm, below=0.3cm of m] (f) {\boldred{Funktion} \\ (in abgerundetem\\Rechteck)}; } \only<3-> { \node[align=right, xshift=-4cm, below=0.3cm of m] (f) {\boldred{Funktion} \\ (in abgerundetem\\Rechteck)}; \draw[red] (f.north east) to [bend right=10] (m); } \only<1-3> { \node[opacity=0, align=center, above =of m] (p) {\boldred{Parameter}}; } \only<4-> { \node[align=center, above =of m] (p) {\boldred{Parameter}}; \draw[red] (p.west) to [bend right=30] (p1); \draw[red] (p.east) to [bend left=30] (p2); } \only<-4> { \node[opacity=0, align=left, right=0.3cm of m, yshift=0.3cm] (d) {\boldred{Datenfluss}\\ (Pfeile, die Daten\\"transportieren")}; } \only<5-> { \node[align=left, right=0.3cm of m, yshift=0.3cm] (d) {\boldred{Datenfluss}\\ (Pfeile, die Daten\\"transportieren")}; \draw[red] ($(d.west) + (0, 0.6cm)$) to [bend right=5] ($(m.north -| p1) + (0, 0.2cm)$); \draw[red] ($(d.west) + (0, 0.6cm)$) to [bend left=10] ($(m.north -| p2) + (0, 0.3cm)$); } \only<-5> { \node[opacity=0, align=center, xshift=2cm, yshift=0.7cm, below =of m] (a) {\boldred{Ausgabewert}\\ (Pfeil mit\\freier Spitze)}; } \only<6-> { \node[align=center, xshift=2cm, yshift=0.7cm, below =of m] (a) {\boldred{Ausgabewert}\\ (Pfeil mit\\freier Spitze)}; \draw[red] (a.north west) to [bend right=10] ($(m.south) - (0, 0.25cm)$); } \end{tikzpicture} } \end{center} ## Beispiel - Strompreis Die Grundlage für die Ermittlung der Stromkosten pro Monat wird durch den Stromanbieter festgelegt: ::: columns :::: {.column width=50%} > - Grundpreis: 8,90 €/Monat > - Arbeitspreis: 41,59 Cent Cent pro Kilowattstunde (BNetzA Oktober 2024) :::: :::: {.column width=50%} \pause \huge \boldred{Wie berechnet man daraus den Strompreis?} :::: ::: ## Beispiel - Strompreis pro Monat \begin{center} \huge $\Rightarrow \frac{\text{Verbrauch} \cdot \text{Arbeitspreis}}{100} + \text{Grundpreis}$ \end{center} \vspace{0.5cm} Für die Ermittlung des Strompreises müssen folgende Werte bekannt sein: \pause > - **(monatlicher) Verbrauch in kWh** > - **Arbeitspreis in Cent/kWh** > - **Grundpreis in Euro** ## \faIcon{pencil-alt} Arbeitsauftrag: Datenflussdiagramm - 5-7 min **Erstelle ein Datenflussdiagramm zur Ermittlung der monatlichen Stromkosten.** \centering \huge $\Rightarrow \frac{\text{Verbrauch} \cdot \text{Arbeitspreis}}{100} + \text{Grundpreis}$ ## \faIcon{pencil-alt} Arbeitsauftrag - Lösungsvorschlag ![](img/strom_dfd.png){.center height=90%} ## Datenflussdiagramme (DFD) Datenflussdiagramme kann man mit einem Tabellenkalkulationsprogramm gut nachbilden. [Beispiel:]{.underline} Multiplikation zweier Zahlen \pause ![](img/tks_mult_dfd.png){.center} ## \faIcon{desktop} Arbeitsauftrag: Strompreis-Berechnung - 20 min 1. Überführe das Datenflussdiagramm zur Ermittlung des Stromverbrauchs in ein Rechenblatt. **Achte auf die Verwendung von Funktionen zur Berechnung der Ausgabewerte!** 2. Berechne anschließend den Monatsverbrauch für folgende Eingabewerte: * Ein Haushalt benötigt im Monat ca. **335,40** kWh Strom. * Dabei sind eine Grundgebühr von **8,90€** und zusätzlich **41,59 ct. pro kWh** zu entrichten. ## \vspace{-0.5cm} ![](img/tks_strom_dfd.png){.center} ## \faIcon{desktop}\faIcon{pencil-alt} Arbeitsauftrag: Caesar-Verschlüsselung (vgl. S.28 A3) - 20 min ![](Copyrighted/S28_3.png) \begin{tikzpicture}[overlay, remember picture] \node[anchor=west, xshift=13cm, yshift=1.3cm] at (current page.south west) {\includegraphics[keepaspectratio, height=3.5cm]{Copyrighted/S28_3_code.png}}; \end{tikzpicture} ## \faIcon{desktop}\faIcon{pencil-alt} Arbeitsauftrag: Biber-Namen (vgl. S.30 A8) Beim jährlichen Wettbewerb „Informatik-Biber“ ist bei der Registrierung der Teilnehmenden wichtig, dass jeder Anmeldename nur einmal vergeben wird. Ein denkbarer Aufbau ist der folgende: ::: columns :::: {.column width=50%} ![](Copyrighted/S30_8_bieber.png) :::: :::: {.column width=50%} ![](Copyrighted/S30_8_functions.png) :::: ::: **Erstelle zunächst ein Datenflussdiagramm mithilfe der rechts abgebildeten Funktionen und anschließend ein Rechenblatt zur Generierung des Anmeldenamens.** Denke dir eigene Beispielwerte aus.