Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
gf_informatik:programmieren_i_sca [2024-11-02 06:35] – sca | gf_informatik:programmieren_i_sca [2025-01-07 11:01] (aktuell) – [Programmieren I: Programmieren mit TurtleGraphics] sca | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== Programmieren I: Programmieren mit TurtleGraphics | + | ====== Programmieren I: Grundlagen der Programmierung |
++++Lernziele| | ++++Lernziele| | ||
+ | * Grundsätzlich: | ||
* Ich kann erklären, was eine **Variable** ist und passende Analogien machen. | * Ich kann erklären, was eine **Variable** ist und passende Analogien machen. | ||
* Ich kann erklären, wann und warum man Variablen verwenden sollte. | * Ich kann erklären, wann und warum man Variablen verwenden sollte. | ||
Zeile 14: | Zeile 15: | ||
* (Beachte: Bei Prüfungen wird nicht nur bewertet *ob* der Code korrekt funktioniert, | * (Beachte: Bei Prüfungen wird nicht nur bewertet *ob* der Code korrekt funktioniert, | ||
* Ich kann von der Benutzerin eine **Eingabe** verlangen und diese in einer Variable speichern. | * Ich kann von der Benutzerin eine **Eingabe** verlangen und diese in einer Variable speichern. | ||
+ | * Ich kann die wichtigsten **Vergleichsoperatoren** verwenden, um Zahlen miteinande zu vergleichen | ||
* Ich kann **Verzweigungen** (if, | * Ich kann **Verzweigungen** (if, | ||
* Ich kann einfache **Konsolenprogramme** (Programme mit Eingabe und/oder Ausgabe aber *ohne Turtle*). | * Ich kann einfache **Konsolenprogramme** (Programme mit Eingabe und/oder Ausgabe aber *ohne Turtle*). | ||
* (Optional): Ich kann in **farbige Bilder** erstellen mit TurtleGraphics. | * (Optional): Ich kann in **farbige Bilder** erstellen mit TurtleGraphics. | ||
+ | |||
+ | * Ich kann mit den wichtigsten **mathematischen Operatoren** rechnen (`+, | ||
+ | * Ich kann den Zuweisungsoperataor `=` mit dem Vergleichsoperator `==` vergleichen. | ||
+ | * Ich kann mit **f-Strings** arbeiten, zum Beispiel: | ||
+ | * Mehrere Strings zusammenhängen | ||
+ | * Werte von Variablen am richtigen Ort im String einsetzen | ||
+ | * Ich kann **komplexere Grafiken** mit der Turtle elegant mit Schleifen programmieren, | ||
+ | * spiralförmige Muster | ||
+ | * sich wiederholende Muster (gleiches Symbol mehrfach nebeneinander) | ||
+ | * Ich kann mit **while-Schleifen** einen Codeblock wiederholen lassen, z.B.: | ||
+ | * Fix vorgegebene Anzahl Wiederholungen. | ||
+ | * Zahlen herauf / herunter zählen. | ||
+ | * Ich verwende **KEIN REPEAT** mehr. Nie mehr! | ||
+ | * Ich kann mit **break** aus einer " | ||
Zeile 819: | Zeile 835: | ||
Um das Programm abzubrechen, | Um das Programm abzubrechen, | ||
+ | |||
+ | |||
+ | ===== Zusatzaufgaben ===== | ||
+ | |||
+ | Löse die Aufgaben so elegant wie möglich. Verwende z.B. wann immer möglich Schleifen. | ||
+ | |||
+ | ==== Basic ==== | ||
+ | |||
+ | === Aufgabe: Wiederholen === | ||
+ | |||
+ | Bart hat mal seine Carbonara wieder mit Rahm gekocht! Zur Strafe muss er 100x "Kein Rahm in die Carbonara!" | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | === Aufgabe: 5er-Reihe === | ||
+ | |||
+ | Gib alle Zahlen der 5er Reihe aus im Bereich $5, | ||
+ | |||
+ | === Aufgabe: Summe gerader Zahlen === | ||
+ | |||
+ | Berechne die Summe aller gerader Zahlen von $2$ bis und mit $100$. | ||
+ | |||
+ | === Aufgabe: Unendlicher Zähler === | ||
+ | |||
+ | Im Sekundentakt soll herauf gezählt werden: $1, | ||
+ | Um einen Delay von 1s einzubauen, gehe wie folgt vor: | ||
+ | <code python> | ||
+ | import time # importiere ganz oben im Code | ||
+ | ... | ||
+ | time.sleep(1) # Befehl, dass für 1s soll pausieren | ||
+ | </ | ||
+ | |||
+ | |||
+ | ==== Anspruchsvoll ==== | ||
+ | |||
+ | === Aufgabe: Lord of the Rings === | ||
+ | |||
+ | Erzeuge das folgende Bild auf clevere Art und Weise. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | *Tipp:* Verwende zwei ineinander verschachtelte Schleifen. | ||
Zeile 1507: | Zeile 1566: | ||
++++ | ++++ | ||
- | |||
- | <nodisp 2> | ||
++++Aufgaben I| | ++++Aufgaben I| | ||
Zeile 1540: | Zeile 1597: | ||
<code python> | <code python> | ||
+ | summe = 0 | ||
+ | |||
+ | while True: | ||
+ | eingabe = input(" | ||
+ | if eingabe == ' | ||
+ | break | ||
+ | summe = summe + eingabe | ||
+ | print(f" | ||
+ | | ||
+ | print(f" | ||
</ | </ | ||
Zeile 1545: | Zeile 1612: | ||
++++ | ++++ | ||
- | </ | ||