**Dies ist eine alte Version des Dokuments!**
Aufgaben ND – Funktionen für Fortgeschrittene
ND1 – Weitere Nächte im Hotel
Schreibe eine neue Funktion hotel_preise2(personen, naechte, anreisetag), die den Gesamtpreis für einen Hotelaufenthalt berechnet und zurückgibt:
Preise pro Nacht:
| Tarif (Anreisetag) | Einzelzimmer | Doppelzimmer |
|---|---|---|
| Sonntag bis Donnerstag | 120 | 140 |
| Freitag und Samstag | 150 | 200 |
Hinweise:
- Deine Funktion muss zuerst die Anzahl Einzel- und Doppelzimmer berechnen (ausgehend von der Anzahl Personen): Es ist maximal ein Einzelzimmer nötig.
- Die Angabe des Anreisetags erfolgt als Text, z. B. „Freitag“, siehe Code unten.
- Erstelle in der Funktion eine Liste
tagemit Texten für jeden Wochentag. Mit der Funktionindexkannst du die Position eines gegebenen Wochentags ermitteln, z.B. gäbetage.index(„Dienstag“)den Wert 1 zurück. - Wenn du die Position des Anreisetag weisst, kannst du für jede Nacht beurteilen, ob Wochenendtarif gilt oder nicht – aber wie? Versuche es erst ohne Hilfe von KI.
Teste deine Funktion mit folgendem Code:
# Reise 1: 2 Personen, 2 Nächte ab Freitag: Preis = 400 print(hotel_preise2(2, 2, "Freitag")) # Reise 2: 3 Personen, 4 Nächte ab Mittwoch: Preis = 1220 print(hotel_preise2(3, 4, "Mittwoch")) # Reise 3: 1 Person, 10 Nächte ab Donnerstag: Preis = 1320 print(hotel_preise2(1, 10, "Donnerstag"))
ND2 – RGB-Palette
- Schreibe eine Funktion
rgb_dot(red, green, blue), die einen Punkt in der gewünschten Farbe zeigt.- Die drei Argumente können jeweils einen Wert zwischen 0 und 5 einnehmen:
rgb_dot(0,0,0)soll einen schwarzen Punkt zeichnen,rgb_dot(5,0,0)einen ganz roten Punkt undrgb_dot(5,5,5)einen weissen Punkt.
- Ergänze einen Code, der alle 216 Farben, die mit dieser Funktion gezeichnet werden können, in einer Farbpallete wie im Bild unten aufzeichnet.
- In jedem der sechs Quadrate nimmt der Blau-Anteil jeweils von links nach rechts und der Grün-Anteil von oben nach unten zu.
- Über die sechs Quadrate hinweg nimmt der Rot-Anteil von links nach rechts zu.
ND3 – Fibonacci-Spirale
Infomiere dich zuerst über die Informiere dich über die Fibonacci-Folge und erstelle dann Funktionen, mit denen Du eine Fibonacci-Spirale wie im Bild malen kannst.
- Erstelle eine Funktion
fibonacci(n), die eine Liste mit den erstennZahlen der Fibonacci-Folge zurückgibt. Zum Beispiel gibtfibonacci(7)die Liste[0, 1, 1, 2, 3, 5, 8]zurück. Teste die Funktion. - Erstelle eine Funktion
viertelrkreis(radius, farbe), die einen Viertelkreis in gewünschter Farbe zeichnet. Tipp: Die Turtle sollte den Kreis so zeichnen, dass sie mit dem Bogen beginnt und am Ende an derjenigen Position ist, an der der nächste Kreisbogen beginnen kann. Teste deine Funktion, indem du sie mehrmals, mit immer grösserem Radius, aufrufst. - Erstelle eine Funktion
fibo_spirale(n), die eine fibonacci-Spirale ausnViertelkreisen wie im Bild malt: Die Farben der Viertelkreise wechseln zwischen blau und rot. Verwende die bereits erstellten Funktionenfibonacciundviertelkreis. Teste deine Funktion.
Zusatzaufbabe
Erstelle eine neue Funktion fibo_spirale2(n, colors). Dieser Funktion wird zusätzlich eine Farbliste beliebiger Länge mitgegeben. Die Funktion zeichnet die Viertelkreise gemäss der Farbliste. Für folgenden Code sollte nebenstehendes Bild entstehen.
farben = ["crimson", "orange", "maroon", "gold"] fibo_spirale2(9, farben)



