--- author: Florian Fischer lang: de theme: metropolis aspectratio: 169 header-includes: | \makeatletter \beamer@ignorenonframefalse \makeatother \let\tightlist\relax --- ## Wiederholung > - Gib an welche Arten der Adressierung von Zellen (**Zellbezüge**) es gab. > - Welche \boldred{vordefiniereten Funktioen} bietet ein **TKS** an? > - Wie können ganze Zellbereiche leicht adressiert werden? > - Gegeben ist die nachfolgende Funktionsbeschreibung: \vspace{0.2cm}\begin{minipage}{0.9\textwidth} \phantom{a}\hspace{0.1cm}\textbf{\texttt{FINDEN(Suchtext; Text)}} \\ \phantom{a}\hspace{0.1cm}Sucht eine Zeichenfolge innerhalb einer anderen (Groß-/Kleinschreibung wird beachtet) \end{minipage} Gib an, welche Zahl sie als Ergebnis liefert, wenn die Formel **=FINDEN("h"; "Hallo")** eingegeben wird. ## 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}. [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: 28,9 Cent Cent pro Kilowattstunde (NDR Oktober 2023) :::: :::: {.column width=50%} \pause \huge \boldred{Wie berechnet man daraus den Strompreis?} :::: ::: ## Beispiel - Strompreis pro Monat Für die Ermittlung des Strompreises müssen folgende Werte bekannt sein: > - **(monatlicher) Verbrauch in kWh** > - **Arbeitspreis in Cent/kWh** > - **Grundpreis in Euro** \centering \huge $\Rightarrow \frac{\text{Verbrauch} \cdot \text{Arbeitspreis}}{100} + \text{Grundpreis}$ ## \faIcon{pencil-alt} Arbeitsauftrag - 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 - 20min 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 **28,9 ct. pro kWh** zu entrichten. ## \vspace{-0.5cm} ![](img/tks_strom_dfd.png){.center} ## \faIcon{desktop}\faIcon{pencil-alt} Arbeitsauftrag ![](Copyrighted/S28_3.png) ## \faIcon{desktop}\faIcon{pencil-alt} Arbeitsauftrag 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.