Lehrer beeindrucken While Schleife?
Wir müssen kreative „Schleifen“ malen. In der Kommandozeile seht ihr was ich eingeben kann. Mit welchen Werten kommt was kreatives raus was die Lehrerin beeindruckt und nicht nur so eine langweilige Schleife ist. Wir haben neben der Formel a=a-v auch noch a=a*3 (Zeile 18)
2 Antworten
Wie wäre es mit einer Goldenen Spirale? https://de.wikipedia.org/wiki/Goldener_Schnitt#Goldene_Spirale
Ich bin derzeit nicht so in Python, aber habe Folgendes im Internet gefunden; sogar mit turtle: https://github.com/Pirraio/Golden-Spiral/tree/main (golden_spiral.py)
Hoffe, das hilft; sonst schaue ich nochmal weiter.
Da steht kein Code drin. Wie die Schleife aufgebaut sein muss habe ich verstanden.
Wie meinst du kein Code? Der Code steht in der Datei, die ich benannt habe: https://github.com/Pirraio/Golden-Spiral/blob/main/golden_spiral.py
Ok stimmt entschuldige. Wir müssen aber mit while arbeiten und nicht mit for
Ja, und? Jede While-Schleife lässt sich problemlos in eine For-Schleife umwandeln und umgekehrt.
Selbstständig bekomme ich das umwandeln nicht hin und im Unterricht hatten wir es noch nicht
ok... dann mal so als Denkanstoß:
for i in range(2):
doSomethingWith(i)
ist nichts anderes als:
for i in [0, 1]:
doSomethingWith(i)
was wiederum nichts anderes ist als:
i = 0
while i < 2:
doSomethingWith(i)
i = i + 1
Übrigens gibts auch gute Onlinedokus wo man das alles direkt auch im Browser ausprobieren kann, z.B.:
Danke erstmal das macht tatsächlich Sinn und ist logisch. Kann man statt i=i+1 nicht auch * machen? Das ist doch dann die Unterscheidung zwischen arithmetischer und geometrischer Schleife, oder?
Klar. Wie du die Schleife bzw. die Schleifenbedingung gestaltet ist komplett dir überlassen. Einzuhalten ist lediglich die äußere syntaktische Struktur:
while [condition]:
[body]
Es gibt z.B. Schleifen die rückwärts gehen, mit komplexeren oder nicht variablenbasierten Bedingungen, Endlosschleifen mit Abbruchbedingung usw. Das Gezeigte ist lediglich ein einfaches Beispiel basierend auf dem verlinkten Code.
versuche rechteckige Schleifen, vielleicht zackige Schleifen oder wellige Schleifen
du kannst eckige Schleifen durch gerade Strecken die durch 90° Drehungen unterbrochen werden
wellige Schleifen kannst mit dem Sinus machen
ajkcdajefiu~
Das mit Sinus klingt spannend. Kannst du mir da auf die Sprünge helfen wie der Code aussehen muss?
das weitere muss du wahrscheinlich tweaked, aber ein Ansatz wäre in Zeile 17 ‚lt(math.sin(i))‘, i ist eine fortlaufend steigernde Variable (‚i += 1‘ in der Schleife), um den Welleneffekt zu erzeugen
vergiss nicht die math library zu importieren!
ajkcdajefiu~
du kannst die Welle strecken oder stauchen mit einem Vorfaktor, vielleicht geht’s dann besser?
ajkcdajefiu~
Kannst du mir da helfen wie ich das in Phython schreibe? Habe mir das durchgelesen aber werde daraus nicht schlau