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
talit:python_advanced_problems [2024-12-16 12:25] – [6. Winter Wonderland Christmas Game] scatalit:python_advanced_problems [2025-01-13 10:16] (aktuell) – [8. Web Game of Life mit Flask] sca
Zeile 490: Zeile 490:
    * Verschiedene Geschenke, gewisse Typen beinhalten Bomben -> Abzug oder Leben verlieren bis Game Over    * Verschiedene Geschenke, gewisse Typen beinhalten Bomben -> Abzug oder Leben verlieren bis Game Over
    * Santa der mit Schlitten quer durch den Bildschirm reitet    * Santa der mit Schlitten quer durch den Bildschirm reitet
-   * Eigene Ideen, sei kreativ.+   * Power-Ups 
 +   * Animationen, z.B. wenn Bombe explodiert, ... 
 +   * Musik & SFX 
 +   * Eigene Ideen, sei kreativ!
  
 Anforderungen Programmieren: Anforderungen Programmieren:
Zeile 496: Zeile 499:
    * Muss strikt **objektorientiert** sein. Mache z.B. Klasse `Item` sowohl für Geschenke als auch Schneeflocken. Allerdings sollen nur die Geschenke einsammelbar sein. Mache dazu z.B. eine Flag `is_collectable`, welche `True` für Geschenke und `False` für Schneeflocken ist.    * Muss strikt **objektorientiert** sein. Mache z.B. Klasse `Item` sowohl für Geschenke als auch Schneeflocken. Allerdings sollen nur die Geschenke einsammelbar sein. Mache dazu z.B. eine Flag `is_collectable`, welche `True` für Geschenke und `False` für Schneeflocken ist.
    * Tipp: Starte mit **Template** von [[python_pygame#template|hier]].    * Tipp: Starte mit **Template** von [[python_pygame#template|hier]].
 +   * Verwende z.B. diese Bilder oder finde/erzeuge eigene:
 +
 +{{:talit:winterwonderland.png?200|}} {{:talit:snowflake.png?100|}} {{:talit:present.png?100|}}
 +
 +===== - Flask-Tutorial =====
 +
 +Erstelle mit Flask eine einfache Website mit folgenden Features:
 +
 +   1. **Clicker:** Programmiere (nicht serverseitig) einen Counter. Jedes Mal wenn ein Button gedrückt wird, erhöht sich dieser um 1.
 +   1. **Zufallszahl:** Auf Knopfdruck wird eine Zufallszahl angezeigt. Diese wird serverseitig erzeugt.
 +   1. **Encryption:** In Textfeld kann Text eingegeben werden. Dieser wird in real time (also direkt mit Eingabe) serverseitig verschlüsselt. Verwende dazu einen Algorithmus, denn du im Grundlagenfach bereits programmiert hast (Cäsar, Vigenere, ...). Der verschlüsselte Text wird dann immer gleich angezeigt.
 +   1. **Automatisierter Counter** oder automatisierte Zufallszahl: Jede Sekunde soll der Wert neu gesetzt werden. Syntax:<WRAP>
 +<code javascript>
 +async function loop() {
 +    while (true) {
 +        // <code that gets executed before the wait>
 +
 +        await new Promise(resolve => setTimeout(resolve, 1000)); // Sleep for 1 second (1000 milliseconds)
 +
 +        // <code that gets executed after the wait>
 +    }
 +}
 +
 +loop()
 +</code>   
 +</WRAP>
 +
 +Nützliche Links:
 +
 +   * [[talit:flask_webserver]]
 +   * [[gf_informatik:web_sca:websites]]
 +   * [[informatik:website_with_js]]
 +   * [[informatik:javascript_cheat_sheet]]
 +
 +
 +===== - Web Game of Life mit Flask =====
 +
 +   * Programmiere eine Web-Version des Game of Life mit Flask.
 +   * Verwende dazu dein bereits vorhandenes Game of Life Model.
 +   * Jede Sekunde (oder so) soll das Frontend (JS) den Zustand der nächsten Iteration vom Backend (Flask) verlangen.
 +   * Sobald das Frontend diesen (in Form eines Dicts) erhalten hat, soll diese angezeigt werden -> View
 +   * Tipp: Für die View kann man z.B. ein [[gf_informatik:web_sca:websites#optionale_theorieresponsive_layout_mit_grid|Grid]] verwenden.
 +
  
  • talit/python_advanced_problems.1734351931.txt.gz
  • Zuletzt geändert: 2024-12-16 12:25
  • von sca