--- header-includes: | \usetikzlibrary{shapes} --- ## Widerholung {.standout} Wie bringen wir dem Computer etwas bei? ## Pokal: Algorithmen Quiz \hfill 7 min ::: {.columns align=center} :::: {.column width=60%} ![](img/pokal.png){.center height=50%} :::: :::: {.column width=40%} **3 Punkte** ![](img/algo_quiz.png){.center} :::: ::: ## \faIcon{chalkboard-teacher} Widerholung: Begriffe ### Anweisung \vspace{-0.1cm} \pause Beschreibung eines einzelnen Arbeitsschrittes ### Ablauf \vspace{-0.1cm} \pause Abfolge von **Anweisungen** ### Algorithmus \vspace{-0.1cm} \pause *Endliche*, *eindeutige* und *ausführbare* Beschreibung eines **Ablaufs** ### \boldred{Sequenz} \vspace{-0.1cm} \pause Folge von **Anweisungen**, bei deren **Ablauf** diese in der angegebenen Reihenfolge abgearbeitet werden. ### \boldred{Programm} \vspace{-0.1cm} \pause Folge von **Anweisungen** in einer \boldred{Programmiersprache}. ## \faIcon{brain} Algorithmen aufschreiben {.standout} Zur graphischen Darstellung eines Programmablaufs verwendet man sogenannte \boldred{[[Struktogramme]]}. Damit lassen sich Programmabläufe unabhängig von konkreten Programmiersprachen übersichtlich darstellen. ## Algorithmen aufschreiben ### Struktogramm Zur graphischen Darstellung eines Programmablaufs verwendet man sogenannte \boldred{Struktogramme}. Damit lassen sich Programmabläufe unabhängig von konkreten Programmiersprachen übersichtlich darstellen. \vspace{1cm} Für eine Sequenz sieht das Struktogramm folgendermaßen aus. \begin{center} \begin{tabular}{|l|} \hline Anweisung 1 \\ \hline Anweisung 2 \\ \hline Anweisung 3 \\ \hline ... \\ \hline \end{tabular} \end{center} ## {.standout} Wie bringen wir einen Roboter mit Schrittlänge 1 Meter zum 100-Meter laufen? ## \faIcon{brain} [[Wiederholung]] {.standout} \huge 3.2 Wiederholung mit fester Anzahl \large Die Kontrollstruktur \boldred{Wiederholung} mit fester Anzahl dient dazu, mehrfache Wiederholungen von \boldred{Anweisungen} oder ganzen \boldred{Sequenzen} einfach zu realisieren. Die Anzahl der Wiederholungen steht dabei von Anfang an bereits fest. ## Struktogramm: Wiederholung mit fester Anzahl Auf der Webseite [**struktog.openpatch.org**]() kannst du Struktogramme \textcolor{red}{erstellen}, indem du die Blöcke in den Editor ziehst. \vspace{-0.2cm} ![](img/struktog.png){.center} \faIcon{desktop} Erstelle eine Wiederholung mit fester Anzahl und \textbf{\textcolor{magenta}{exportiere}} es als Bild. \begin{tikzpicture}[remember picture, overlay] \draw[magenta, line width=1.5pt] (12.35cm, 5.55cm) rectangle (13.05cm, 6.25cm); \draw[red, line width=1.5pt] (0.1cm, 4.8cm) rectangle (4.7cm, 4.45cm); \draw[red, line width=1.5pt] (9.4cm, 5.15cm) rectangle (14cm, 4.8cm); \draw[red, line width=1.5pt] (0.1cm, 4.7cm) edge[-Triangle, bend right] (0.1cm, 2cm); \end{tikzpicture} ## \faIcon{brain} [[Struktogramme]] {.standout} \vspace{2cm} \huge \hspace{-3cm} Struktogramme \large \hspace{-3cm} Wiederholung mit fester Anzahl ![](img/for_struktogramm.png){.center} \begin{tikzpicture}[remember picture, overlay] \node[cloud, cloud puffs=15.8, cloud puff arc=110, aspect=3, draw, thick, rotate=5, minimum width=6.2cm, minimum height=8cm] at (5.2cm, 5.4cm) {}; \node[rotate=5, align=center] at (5.2cm, 5.4cm) { \includegraphics[keepaspectratio, width=3.8cm]{img/editor_img_btn.png} \\[0.1cm] \includegraphics[keepaspectratio, width=4.2cm]{img/add_image.png} }; \node at (5.4cm, 5cm){\textbf{\textcolor{black}{click!}}}; \end{tikzpicture} ## \Large \centering Genug geredet! Wir wollen weiter programmieren! ## Erinnerung Melde dich auf der Webseite [**jwinf.de**](jwinf.de) rechts oben mit deinem Login-Code an. Zusätzlich habe ich euch das **digitale Arbeitsheft** im Mebis Kurs abgelegt. ![](img/mebis_algo_heft.png) ## Übungsaufgaben 1. Klicke auf **Trainingaufgaben**. ![](img/jwinf_aufg.png){.center height=40%} 2. Klicke auf **Arbeitsheft**. ![](img/jwinf_heft.png){.center height=20%} ## \faIcon{desktop} Arbeitsauftrag: Wiederholungen \hfill 20min 1. Löse alle Aufgaben von **Wiederholungen** bis **ZickZack**. Bearbeite auch die schwierigeren Sterneaufgaben. \vspace{0.5cm} 2. Notiere zu jeder *neuen* Aufgabe mindestens ein **Struktogramm**. \vspace{0.5cm} 3. **Für Schnelle**: Arbeite in deinem Tempo im Arbeitsheft weiter.