Sortieren Median ausrechnen (gibt linearen Algorithmus)! Primzahlen: * Fermat-Zahlen: Schüler widerlegen Fermat mit Python (so wie Euler): * https://de.wikipedia.org/wiki/Fermat-Zahl * Mersenne-Zahlen: welche davon sind Primzahlen? * https://de.wikipedia.org/wiki/Mersenne-Zahl#Teilbarkeitseigenschaften_der_Mersenne-Zahlen ====== Ideen ====== Nächstes Mal am Anfange: Editieren mit VS Code, Einrücken, Zeilen verschieben, Dateien kopieren git shell? Wesentliche Konzepte gleich mit Spielen veranschaulichen: game loop, if bei Tastendruck-Abfrage, Variable speichert Position; Funktion checkt auf Kollision etc. Mal unity ausprobieren? Gibt Videos auf Youtube, etwa pong per unity. ====== Next time ====== 2023-11-04-uebergang-kanti-studium-was-ist-noetig.txt im Verzeichnis ksbg/FORMI/fg-info-square ====== keyboard input im turtle module ====== from turtle import * # setup(500, 500) # Screen() title("Turtle Keys") # move = Turtle() showturtle() def vorwaerts(): forward(50) def links(): left(60) def rechts(): right(60) def rueckwaerts(): back(50) def quadrat(): i = 0 while i < 4: forward(100) left(90) i = i + 1 def polygon(): n = int(textinput("Polygon", "Anzahl der Ecken: ")) i = 0 while i < n: forward(20) left(360 / n) i = i + 1 listen() onkey(vorwaerts, "Up") onkey(links, "Left") onkey(rechts, "Right") onkey(rueckwaerts, "Down") onkey(quadrat, "q") onkey(polygon, "p") onkey(exit, "Escape") listen() mainloop() ==== nimmt tastendruecke in jedem Fenster auf, auch wenn nicht in Terminal, funktioniert unter Windows ==== import keyboard from turtle import * while True: event = keyboard.read_event() if event.event_type == keyboard.KEY_DOWN: key = event.name print(f'Pressed: {key}') if key == 'f': forward(10) elif key == 'q': break ====== keyboard input, auf Linux klappts, Windows auch nach pip install readchar, aber Eingabe im Terminal, was ungeschickt ====== Ist also für "Einzeilen-Text-Game" geeignet... from turtle import * import readchar print("Bewege die Turtle!") print("i: vorwärts") print("k: rückwärts") print("j: links") print("l: rechts") print("e oder q: Exit") s = 50 # Schrittweite dicke = 4 # Stiftdicke pensize(dicke) while True: taste = readchar.readkey() print(taste, end="") if taste =="j": left(60) elif taste =="l": right(60) elif taste =="i": forward(s) elif taste =="k": backward(s) elif taste =="e" or taste == "q": print("Auf Wiedersehen!") break else: print("Taste ohne Funktion!") ====== Ideen Informatik 2023 und Ausgelagertes ====== * [[lehrkraefte:snr:informatik:glf23:python:chaos-game-mit-pygame|Spielerisch-chaotische Einführung in Python]] (inklusive Installation von Python, pygame, Ausführen per VS Code) * vom Physik-Assistenten ein paar Mikroskope besorgen zum Pixel anschauen auf Smartphones und Computern * OxoCard? ====== Primzahllisten schnell erzeugen ====== https://stackoverflow.com/questions/2068372/fastest-way-to-list-all-primes-below-n ====== Sonstiges ====== * homepage wie https://ridegravel.ch/transjura/ analysieren (Video, das von selbst läuft) * Webpage zum 1x1 erstellen und ähnliches (Zahlenraum von -100 bis 100, Zahlen zwischen -20 und +20 addieren/subtrahieren) * https://en.wikipedia.org/wiki/Turing_Tumble * https://mia.phsz.ch/Informatikdidaktik/WebHome