lehrkraefte:snr:informatik:glf23:python:chaos-game-mit-pygame

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:glf23:python:chaos-game-mit-pygame [2023/08/21 21:16]
Olaf Schnürer [Aufgabe 1: Python (inklusive pygame) installieren und das obige Programm zum Laufen bringen (zuerst in VS Code)]
lehrkraefte:snr:informatik:glf23:python:chaos-game-mit-pygame [2023/08/24 14:18] (current)
Olaf Schnürer [Algorithmisches Denken üben: Die Teiler einer Zahl ausgeben]
Line 1: Line 1:
 ~~NOTOC~~ ~~NOTOC~~
 +
 +==== Nachträge ====
 +
 +  * HTML-Seite mit Lieblingslinks zur Home-Seite (oder Start-Seite) machen, falls noch nicht geschehen.
 +  * Wer hat iPad statt Laptop? alte Schul-Linux-Laptops ausleihbar 
 +<!--  * Informatik-Ordner zu "Quick access" hinzufügen (per Rechtsklick auf den Ordner, "Pin to Quick access").-->
 +
 +===== Algorithmisches Denken üben: Die Teiler einer Zahl ausgeben =====
 +
 +Unterrichtsgespräch, Algorithmus umgangssprachlich formulieren, dann gemeinsam in VS Code eintippen in Python (zuerst Verzeichnis öffnen)
 +
 +Flussdiagramm: Was ist die Ausgabe des [[https://de.wikipedia.org/wiki/Programmablaufplan#/media/Datei:Flowchart_de.svg|hier verlinkten Flussdiagramms]]?
 +
 +Zusatzaufgaben: 
 +  * Schreibe ein neues Programm (neue Datei!), das alle geraden Zahlen bis zu einer eingegebenen Zahl ausgibt.
 +  * ... das alle geraden Zahlen rückwärts ausgibt
 +  * erweitere das Teiler-Programm, so dass es am Ende ausgibt, ob die eingegebene Zahl eine Primzahl ist
 +  * Schreibe ein neues Programm, das alle Primzahlen bis zu einer eingegebenen Zahl ausgibt.
 +
 +
 +==== Allgemeines zu Programmiersprachen ====
 +  * [[https://de.wikipedia.org/wiki/Programmiersprache|Programmiersprachen]] sind von Menschen entworfene Sprachen (vergleichbar zu [[https://de.wikipedia.org/wiki/Plansprache|Plansprachen]] wie Esperanto oder Volapük im Gegensatz zu [[https://de.wikipedia.org/wiki/Nat%C3%BCrliche_Sprache|natürlichen Sprachen]] wie Englisch, Deutsch, Chinesisch etc.).
 +  * Es gibt sehr viele Programmiersprachen (ca. 600 im Jahr 2020), vgl. https://de.wikipedia.org/wiki/Zeittafel_der_Programmiersprachen.
 +  * Meist verwenden Programmiersprachen Wörter aus dem Englischen als [[https://de.wikipedia.org/wiki/Schl%C3%BCsselwort_(Programmierung)|Schlüsselwörter]].
 +  * Wir lernen die Programmiersprache [[https://de.wikipedia.org/wiki/Python_(Programmiersprache)#Entwicklungsumgebung|Python]]. Sie wurde Anfang der 1990er Jahre von Guido von Rossum entwickelt. Sie wird kontinuierlich weiterentwickelt. 
 +  * Python ist (heutzutage, Jahr 2022) eine der populärsten Sprachen, vgl. etwa https://www.youtube.com/watch?v=Og847HVwRSI
 +  * Mit Python kann man "alle" Apps programmieren, die man auf dem Computer oder auf dem Handy verwendet. (Dasselbe gilt für jede halbwegs mächtige Programmiersprache.) 
 +  * Die offizielle Website für Python: https://www.python.org/
 +  * Es gibt viele Python-Tutorials im Netz, etwa https://www.w3schools.com/python/default.asp. (Ich finde die Tutorials von W3Schools meist sehr hilfreich.)
 +
  
 ====== Spielerisch-chaotische Einführung in Python ====== ====== Spielerisch-chaotische Einführung in Python ======
 +
 +
 +===== Aufgabe 1: Python installieren und das Teiler-Programm zum Laufen bringen (in VS Code) =====
 +
 +<WRAP round todo>
 +1. Installiere Python auf deinem Rechner. Am einfachsten geht dies über den Windows App Store.((Alternative (nicht empfohlen, denn vermutlich muss man dann noch einige Pfad-Einstellungen von Hand vornehmen): Download von https://www.python.org/downloads/)) (Man kann die App "Python" starten und dann direkt in der "Python-Shell" Python-Befehle eingeben. Das brauchen wir aber heute nicht.)
 +
 +2. Versuche, das gemeinsam geschriebene Programm ''teiler.py'' zum Laufen zu bringen (mit dem Shortkey ''Ctrl+F5'' oder über das Menü per ''Run''->''Run without debugging'' (oder deutsch ''Ausführen''->''Ausführen ohne Debugging'')).
 +</WRAP>
  
 ===== Chaos-Spiel − der springende Punkt ===== ===== Chaos-Spiel − der springende Punkt =====
Line 89: Line 128:
 y = randint(0, hoehe) y = randint(0, hoehe)
  
-for in range(0iterationen):+0 
 +while i <= iterationen:
     zufall = randint(1, 3)     zufall = randint(1, 3)
     if zufall == 1:     if zufall == 1:
Line 108: Line 148:
     if i % 1000 == 0:                                        # "Prozent-Division" liefert den Rest der Division.     if i % 1000 == 0:                                        # "Prozent-Division" liefert den Rest der Division.
         print(i)         print(i)
 +    i = i + 1
  
 print("Fertig! Das Fenster wird in 5 Sekunden geschlossen.") # Ausgabe der Zeichenkette (= string) zwischen den Anführungszeichen. print("Fertig! Das Fenster wird in 5 Sekunden geschlossen.") # Ausgabe der Zeichenkette (= string) zwischen den Anführungszeichen.
Line 256: Line 297:
  
  
-===== Aufgabe 1Python (inklusive pygame) installieren und das obige Programm zum Laufen bringen (in VS Code) =====+===== Aufgabe 2Das Programm "chaos game" zum Laufen bringen (in VS Code) =====
  
 <WRAP round todo> <WRAP round todo>
-1. Installiere Python auf deinem RechnerAm einfachsten geht dies über den Windows App Store.((Alternative (nicht empfohlendenn vermutlich muss man dann noch einige Pfad-Einstellungen von Hand vornehmen): Download von https://www.python.org/downloads/)) (Man kann die App "Python" starten und dann direkt in der "Python-Shell" Python-Befehle eingebenDas brauchen wir aber heute nicht.)+1. Speichere das obige Python-Programm ''chaos-game.py'' in deinem Verzeichnis ''C:\Users\Vorname.Nachname\informatik\python'' (durch Anklicken des Programm-Namens über dem obigen Code mit der RECHTEN Maustaste''Save as''/''Speichern unter'').
  
-2. Speichere das obige Python-Programm ''chaos-game.py'' in deinem Verzeichnis ''C:\Users\Vorname.Nachname\informatik\python'' (durch Anklicken des Programm-Namens mit der RECHTEN Maustaste, ''Save as''/''Speichern unter'').+2. Öffne das Programm ''chaos-game.py'' mit VS-Code (etwa über das Menü per ''File''->''Open File'')Versuche, es dort zum Laufen zu bringen (über das Menü per ''Run''->''Run without debugging'' (oder deutsch ''Ausführen''->''Ausführen ohne Debugging'') oder schneller mit dem Shortkey ''Ctrl+F5''). - Vermutlich klappt das nicht: Du musst die Library ''pygame'' installieren wie im folgenden 4. Punkt beschrieben (dies ist eine Bibliothek von Befehlen, die das Programmieren von Spielen erleichtern (pygame = python game library); wir verwenden sie, da sie sich auch gut zum Erstellen von Zeichnungen eignet):
  
-3. Öffne das Programm ''chaos-game.py'' mit VS-Code (etwa über das Menü per ''File''->''Open File''). Versuche, es dort zum Laufen zu bringen (über das Menü per ''Run''->''Run without debugging'' (oder deutsch ''Ausführen''->''Ausführen ohne Debugging'') oder schneller mit dem Shortkey ''Ctrl+F5'')- Vermutlich klappt das nichtDu musst die Library ''pygame'' installieren wie im folgenden 4Punkt beschrieben (dies ist eine Bibliothek von Befehlen, die das Programmieren von Spielen erleichtern (pygame = python game library); wir verwenden sie, da sie sich auch gut zum Erstellen von Zeichnungen eignet):+3. Öffne die Anwendung/App "Eingabeaufforderung" (= "command prompt" = "Befehlszeile", auf manchen Schul-Windows-Rechnern muss man "cmd" suchen). Gib dort den Befehl ''pip install pygame'' ein, gefolgt von ''Enter''(''pip'' ist ein Paketverwaltungsprogramm für Python; pip ist ein Akronym für "pip installs packages", vgl[[https://de.wikipedia.org/wiki/Pip_(Python)|]])
  
-4. Öffne die Anwendung/App "Eingabeaufforderung" (= "command prompt" = "Befehlszeile", auf manchen Schul-Windows-Rechnern muss man "cmd" suchen). Gib dort den Befehl ''pip install pygame'' ein, gefolgt von ''Enter'': (''pip'' ist ein Paketverwaltungsprogramm für Python; pip ist ein Akronym für "pip installs packages", vgl. [[https://de.wikipedia.org/wiki/Pip_(Python)|]])+{{:lehrkraefte:snr:informatik:glf22:python:install-pygame.png?800|}}
  
 (Falls das Probleme macht, vielleicht klappt das Folgende (nicht getestet): Probiere es mit ''python -m pip install pygame''.) (Falls das Probleme macht, vielleicht klappt das Folgende (nicht getestet): Probiere es mit ''python -m pip install pygame''.)
  
-{{:lehrkraefte:snr:informatik:glf22:python:install-pygame.png?800|}} +4. Nun solltest du das Programm in VS-Code starten können (so wie im Punkt 3 beschrieben).
- +
-5. Nun solltest du das Programm in VS-Code starten können (so wie im Punkt 3 beschrieben).+
 </WRAP> </WRAP>
  
Line 281: Line 320:
  
  
-===== Aufgabe 4: Python-Extensions installieren (da VS Code gerade offen ist) =====+===== Aufgabe 3: Python-Extensions installieren (da VS Code gerade offen ist) =====
  
 <WRAP center round todo> <WRAP center round todo>
Line 292: Line 331:
  
  
 +<!--
 ===== Aufgabe 5: Programm per Eingabeaufforderung zum Laufen bringen ===== ===== Aufgabe 5: Programm per Eingabeaufforderung zum Laufen bringen =====
  
Line 312: Line 352:
   - Du kannst das Python-Programm direkt aus dem Explorer laufen lassen: Je nach Einstellungen, direkt per ''Doppelklick'' oder per ''Rechtsklick''+"Open with" und dort Python auswählen. (Was beim Doppelklick auf eine Datei eines gegebenen Typs passiert (Dateinamenserweiterung), kann man einstellen per Rechtsklick auf die Datei->"Properties"->"Opens with".)   - Du kannst das Python-Programm direkt aus dem Explorer laufen lassen: Je nach Einstellungen, direkt per ''Doppelklick'' oder per ''Rechtsklick''+"Open with" und dort Python auswählen. (Was beim Doppelklick auf eine Datei eines gegebenen Typs passiert (Dateinamenserweiterung), kann man einstellen per Rechtsklick auf die Datei->"Properties"->"Opens with".)
 </WRAP> </WRAP>
 +-->
  
 ===== Wichtige Begriffe, die du kennen solltest ===== ===== Wichtige Begriffe, die du kennen solltest =====
Line 328: Line 368:
  
  
-===== Bonus-Aufgabe 1 (relativ einfach) =====+===== Bonus-Aufgabe 1 (sehr einfach) =====
  
 <WRAP center round todo> <WRAP center round todo>
  • lehrkraefte/snr/informatik/glf23/python/chaos-game-mit-pygame.1692645398.txt.gz
  • Last modified: 2023/08/21 21:16
  • by Olaf Schnürer