lehrkraefte:snr:informatik:bruehl-2022:algorithmen:quiz

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:snr:informatik:bruehl-2022:algorithmen:quiz [2022/02/20 16:48] – [Berichtigungen und Ergänzungen zum letzten Mal (also nicht schlimm, wenn man es nicht weiss, aber bitte die Antworten hier merken)] Olaf Schnürerlehrkraefte:snr:informatik:bruehl-2022:algorithmen:quiz [2022/04/02 11:15] (current) – [Quiz zum letzten Mal] Olaf Schnürer
Line 1: Line 1:
 +==== Berichtigungen und Ergänzungen zum letzten Mal ====
 +----
 +  * In welcher Programmiersprache programmieren wir?
 +<hidden Antwort>In Python</hidden>
 +----
 +  * Was bedeutet die Abkürzung IDE und was ist das?
 +<hidden Antwort>Integrated Development Environment, also Integrierte Entwicklungsumgebung; ein Editor zum Schreiben von Computerprogrammen mit Zusatzfunktionen, etwa ein "Run"-Button zum Starten des Programms oder Hilfen zum Debuggen (Fehlersuche)</hidden>
 +----
 +  * Welche IDE nutzen wir?
 +<hidden Antwort>Tigerjython</hidden>
 +----
 +  * Wie öffnet man ein Python-Programm, das man auf dem Computer oder der Cloud abgespeichert hat?
 +<hidden Antwort>Leider nicht mit Anklicken unter Windows, wenn ich das recht weiss. (Ich verwende Linux.)
 +In Tigerjython geht es über das Menü per ''Datei'' ''->'' ''Öffnen ...'' oder den zweiten Button von links.</hidden>
 +
 +==== Quiz zum letzten Mal ====
 +
 +  * Was ist ein Algorithmus?
 +<hidden Antwort>eine Folge von Anweisungen / eine Handlungsvorschrift</hidden>
 +----
 +
 +  * Was ist der Unterschied zwischen einem Algorithmus und einem Computerprogramm?
 +<hidden Antwort>Ein Computerprogramm ist ein in einer Programmiersprache formulierter Algorithmus. 
 +Je nach verwendeter Programmiersprache sieht das Programm anders aus. Die dahinterliegende Idee ist im Grunde der Algorithmus.
 +
 +Als Analogie: Man kann eine Begebenheit in einer bestimmten Sprache erzählen, etwa in Italienisch. Die Begebenheit entspricht hier dem Algorithmus, ihre italienische Erzählung dem Computerprogramm in einer bestimmten Programmiersprache, etwa Python.</hidden>
 +----
 +
 +  * Was ist ein Flussdiagramm?
 +<hidden Antwort>
 +Statt das abstrakt zu erklären, ist [[lehrkraefte:snr:informatik:bruehl-2022:algorithmen:#algorithmen|hier]] der Link zu unserem Beispiel.
 +</hidden>
 +----
 +
 +  * Was machen die Befehle ''penUp()'' und ''openDot(20)''?
 +<hidden Antwort>
 +''penUp'' hebt den Zeichenstift an (die Schildkröte schwebt dann sozusagen über der Zeichenfläche und zeichnet nicht, kann aber weiterhin bewegt werden).
 +
 +''openDot(20)'' zeichnet an der aktuellen Position der Schildkröte einen nicht gefüllten Kreis mit Durchmesser 20 (in der aktuellen Zeichenfarbe und Stiftbreite).
 +</hidden>
 +----
 +
 +  * Was passiert, wenn man in der IDE auf den Button {{:lehrkraefte:snr:informatik:bruehl-2022:algorithmen:bug.png?30|}} klickt?
 +<hidden Antwort>Der Debugging-Modus wird ein- oder ausgeschaltet. Debugging bedeutet Fehlersuche.</hidden>
 +----
 +
 +  * Was ist der Unterschied zwischen diesen beiden Buttons? {{:lehrkraefte:snr:informatik:bruehl-2022:algorithmen:run-vs-run-stepwise.png?40|}}
 +<hidden Antwort>Diese beiden Buttons sind nur im Debugging-Modus sichtbar. Der linke Button führt das Programm langsam aus, aber in konstantem Tempo. Der rechte Button führt das Programm schrittweise aus. 
 +Neue: Man kann auch während des Programmablaufs auf diese beiden Buttons klicken und so anhalten bzw. zwischem langsamem und schrittweiem Modus wechseln.</hidden>
 +----
 +
 +  * Wofür sind diese beiden Buttons da? {{:lehrkraefte:snr:informatik:bruehl-2022:algorithmen:halt-stop.png?40|}}
 +<hidden Antwort>Sie erscheinen nur, wenn das Programm läuft (im normalen oder Debugging-Modus). Der linke Button hält das Programm an, der rechte bricht es ab.</hidden>
 +----
 +
 +  * Was ist eine ''repeat''-Struktur? (War eventuell etwas knapp erklärt letztes Mal.)
 +<hidden Antwort>
 +Sie führt einen Code-Block (also mehrere Zeilen des Programms) mehrfach aus. 
 +Nach dem Schlüsselwort ''repeat'' steht mindestens ein Leerzeichen, gefolgt von einer Zahl und einem Doppelpunkt.
 +Alle Zeilen des mehrfach auszuführenden Code-Blocks müssen um vier Leerzeichen eingerückt sein. Danach geht es mit dem nicht eingerückten Code weiter. 
 +Beispiel:
 +<code python>
 +repeat 4:
 +    forward(100)
 +dot(30)
 +</code>
 +</hidden>
 +----
 +  * Leider hat Olaf letztes Mal nicht aufgepasst und nun in jeder Zeile des folgenden Programms einen Fehler gemacht. Findest du alle Fehler? Was wollte er vermutlich zeichnen?
 +<code python>
 +from gturtle import ?
 +makeTurtle
 +setPenColor(brown)
 +penwidth(20)
 +forwards(150)
 +pen(up)
 +Backward(70)
 +runterMitDemBloedenStift(jetzt sofort)
 +left
 +setPenColor("grün")
 +penWidth 30
 +repeat 4
 +    straight(100)
 +    turn(90)
 +</code>
 +<hidden Statt die Antwort hier anzuklicken, kannst du auch das obige Programm in Tigerjython laufen lassen! Anklicken des "clipboard"-Symbols {{:lehrkraefte:snr:informatik:bruehl-2022:algorithmen:clipboard.png?40|}} rechts oben kopiert es in die Zwischenablage.>
 +Einen stark abstrahierten Baum. Wenn du das folgende Programm in Tigerjython kopieren willst: Statt s mit der Maus zu markieren und mit ''Ctrl-c'' in die Zwischenablage zu kopieren, kannst du auch das kleine "clipboard"-Symbol {{:lehrkraefte:snr:informatik:bruehl-2022:algorithmen:clipboard.png?40|}} rechts oben anklicken.
 +<code python>
 +from gturtle import *
 +makeTurtle()
 +setPenColor("brown")
 +penWidth(20)
 +forward(150)
 +penUp()
 +backward(70)
 +penDown()
 +left(45)
 +setPenColor("green")
 +penWidth(30)
 +repeat 4:
 +    forward(100)
 +    right(90)
 +</code>
 +</hidden>
 +----
 +  * Etwas mathematisch: Was muss man im folgenden Programmcode für das ''?'' eintragen, damit ein regelmässiges 7-Eck gezeichnet wird? 
 +
 +Hinweis: Um welchen Winkel dreht sich die Schildkröte insgesamt beim Zeichnen des 7-Ecks (wenn man die Vorwärtsbewegungen weglässt)?
 +<code python>
 +from gturtle import *
 +makeTurtle()
 +repeat 7:
 +    forward(100)
 +    right(?)
 +</code>
 +<hidden Antwort>
 +Das Fragezeichen ist durch ''360/7'' zu ersetzen.
 +
 +Zum Hinweis: Sie dreht sich insgesamt um $360^\circ$, also eine Volldrehung. Dies bedeutet, dass sie sich bei jeder Ecke um ein Siebtel der Volldrehung dreht, also um $\frac{360^\circ}7$.
 +</hidden>
 +
 +==== Freiwillig, wenn du fertig bist ====
 +
 +Suche im Internet nach einer Rangliste der häufigsten bzw. beliebtesten Programmiersprachen. 
 +
 +Warum gibt es so viele Programmiersprachen?
 +
 +Wer will, kann sich auch hier einmal rasch **LAUTLOS, OHNE AUDIO** durchklicken: [[https://www.youtube.com/watch?v=02_Milf7sms| Beliebteste Programmiersprachen im Zeitverlauf]]
 +
 +
 +[[lehrkraefte:snr:informatik:bruehl-2022:ein-und-ausgabe-variablen|Retour zur vorigen Seite]]
 +