Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
gf_informatik:programmieren_i_sca [2024-11-02 06:35] scagf_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 schreibe meinen **Code clever und elegant**. Es geht nicht nur darum, ob der Code das macht, was er soll, sondern auch darum, *wie* der Code geschrieben wurde.\\ \\
    * 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, sondern auch, wie elegant er programmiert wurde.)      * (Beachte: Bei Prüfungen wird nicht nur bewertet *ob* der Code korrekt funktioniert, sondern auch, wie elegant er programmiert wurde.)
    * 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,if-else,if-elif-else) programmieren.    * Ich kann **Verzweigungen** (if,if-else,if-elif-else) programmieren.
    * 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, zum Beispiel:
 +     * 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 "Endlosschleife" ausbrechen.
  
  
Zeile 819: Zeile 835:
  
 Um das Programm abzubrechen, kann die Benutzerin "q" (für Quit) eingeben. Um das Programm abzubrechen, kann die Benutzerin "q" (für Quit) eingeben.
 +
 +
 +===== 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!" schreiben. Da du ein Herz für Bart hast, möchtest du ihm helfen und ihm einen Code schreiben, der ihm die Arbeit abnimmt (auch wenn er seine Strafe eigentlich verdient hat).
 +
 +{{:gf_informatik:carbonara_bart.png?400|}}
 +
 +
 +=== Aufgabe: 5er-Reihe ===
 +
 +Gib alle Zahlen der 5er Reihe aus im Bereich $5,10,...,500$.
 +
 +=== 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,2,3,4,5,...$.
 +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
 +</code>
 +
 +
 +==== Anspruchsvoll ====
 +
 +=== Aufgabe: Lord of the Rings ===
 +
 +Erzeuge das folgende Bild auf clevere Art und Weise.
 +
 +{{:gf_informatik:the_rings.png?400|}}
 +
 +*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("Gib Zahl ein, die dazu addiert werden soll. Abbrechen mit 'q'.")
 +    if eingabe == 'q':
 +        break
 +    summe = summe + eingabe
 +    print(f"Die Summe bisher ist: {summe}")
 +    
 +print(f"Die finale Summe ist: {summe}")
 </code> </code>
  
Zeile 1545: Zeile 1612:
 ++++ ++++
  
-</nodisp> 
  
  
  
  • gf_informatik/programmieren_i_sca.1730529356.txt.gz
  • Zuletzt geändert: 2024-11-02 06:35
  • von sca