lehrkraefte:snr:informatik:glf22:python:for

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:glf22:python:for [2022/09/19 16:33]
Olaf Schnürer [Aufgabe 2: Summe der Quadratzahlen]
lehrkraefte:snr:informatik:glf22:python:for [2022/10/25 10:30] (current)
Olaf Schnürer [Aufgabe 4: Slalomtext]
Line 4: Line 4:
 <WRAP center round info> <WRAP center round info>
 Schleifen werden verwendet, wenn ein Programmteil mehrfach ausgeführt werden soll. In diesem Abschnitt lernst du for-Schleifen kennen. Später werden while-Schleifen erklärt. Schleifen werden verwendet, wenn ein Programmteil mehrfach ausgeführt werden soll. In diesem Abschnitt lernst du for-Schleifen kennen. Später werden while-Schleifen erklärt.
 +
 +Schleifen sind wichtige Kontrollstrukturen; der Fachbegriff in diesem Kontext lautet //Iteration//: Man führt etwas iterativ (= wiederholt) durch.
 </WRAP> </WRAP>
  
Line 179: Line 181:
  
 Damit es nicht zu leicht ist: Damit es nicht zu leicht ist:
-<WRAP left round important 90%>+<WRAP left round important 100%>
 Du darfst nur eine for-Schleife verwenden. Du darfst nur eine for-Schleife verwenden.
  
Line 207: Line 209:
  
 <hidden Hinweis:> <hidden Hinweis:>
-Verwende zwei Variablen: Eine speichert die aktuelle Einrückung und die andere speichert die Veränderung der Einrückung von Zeile zu Zeile: Sie ist manchmal ''1'' und manchmal ''-1''.+Verwende zwei Variablen: Eine speichert die aktuelle Einrückung und die andere speichert die Veränderung der Einrückung von Zeile zu Zeile: Sie nimmt nur die Werte ''1'' und ''-1'' und wird verändert, wenn die aktuelle Einrückung minimal (also Null) oder maximal ist.
 </hidden> </hidden>
  
 <hidden Lösungsvorschlag> <hidden Lösungsvorschlag>
-Zum Ausschalten der zeitlichen Verzögerung die beiden Zeilen mit "time" auskommentieren. 
 <code python> <code python>
 import time import time
Line 226: Line 227:
     time.sleep(0.05)     time.sleep(0.05)
 </code> </code>
 +Zum Ausschalten der zeitlichen Verzögerung: Kommentiere die beiden Zeilen mit "time" aus.
 </hidden> </hidden>
 </WRAP> </WRAP>
Line 235: Line 237:
 Schreibe ein Programm, das die Anzahl der Neuansteckungen mit Corona simuliert.  Schreibe ein Programm, das die Anzahl der Neuansteckungen mit Corona simuliert. 
  
-Am Anfang des Programms sollen aktuelle Anzahl und Zuwachsrate (in Prozen) und Simulationszeit (wie viele Wochen?) als Variablen definiert werden. +Am Anfang des Programms sollen aktuelle Anzahl und wöchentliche Zuwachsrate (in Prozent) und Simulationszeit (wie viele Wochen?) als Variablen definiert werden. 
  
 Hinweis: Um eine Kommazahl (alias float) zu einer ganzen Zahl (alias int) zu runden, verwende den Befeh ''round''. Zum Testen gib etwa ''round(3.49)'' und ''round(3.5)'' in der Python-Shell ein. Hinweis: Um eine Kommazahl (alias float) zu einer ganzen Zahl (alias int) zu runden, verwende den Befeh ''round''. Zum Testen gib etwa ''round(3.49)'' und ''round(3.5)'' in der Python-Shell ein.
Line 318: Line 320:
  
 <WRAP round todo> <WRAP round todo>
-Schreibe ein Programm, das abhängig von einer Variablen ''n'' eine Multiplikationstabelle der Zahlen von $1$ bis $n$ Zahlen ausgibt. Im Fall ''n==10'' soll die Ausgabe wie folgt aussehen (wir lernen in Bälde, wie man eine "tabellarisch schöne" Ausgabe erzeugt).+Schreibe ein Programm, das abhängig von einer Variablen ''n'' eine Multiplikationstabelle der Zahlen von $1$ bis $n$ Zahlen ausgibt. Im Fall ''n == 10'' soll die Ausgabe wie folgt aussehen (wir lernen in Bälde, wie man eine "tabellarisch schöne" Ausgabe erzeugt).
 <code text> <code text>
 1 2 3 4 5 6 7 8 9 10  1 2 3 4 5 6 7 8 9 10 
Line 488: Line 490:
 <WRAP round todo> <WRAP round todo>
 Vereinbarung: In den folgenden Tabellen hat jede Zahl einen "Platz von 5 Zeichen". Vereinbarung: In den folgenden Tabellen hat jede Zahl einen "Platz von 5 Zeichen".
-(1) Ändere dein obiges Programm zur Multiplikationstabelle so, dass die Ausgabe im Fall ''n==10'' wie folgt aussieht:+ 
 +(1) Ändere dein obiges Programm zur Multiplikationstabelle so, dass die Ausgabe im Fall ''n == 10'' wie folgt aussieht:
 <code text> <code text>
     1    2    3    4    5    6    7    8    9   10     1    2    3    4    5    6    7    8    9   10
Line 602: Line 605:
 Beachte die zusätzlichen geschweiften Klammern um den "Platzparameter" ''abstand'' in den f-strings.  Beachte die zusätzlichen geschweiften Klammern um den "Platzparameter" ''abstand'' in den f-strings. 
  
-Meine Interpretation, warum sie nötig sind: Python erwartet als "Platzparameter" eine Zahl; wenn man einen auszuwertenden Ausdruck angeben will, braucht man diese Zusatzklammern. +Mir ist nicht ganz klar, warum diese verlangt werden; man könnte dies aber so begründen: Python erwartet als "Platzparameter" eine Zahl; wenn man einen auszuwertenden Ausdruck angeben will, braucht man diese Zusatzklammern. 
  
 Teste dies in der Python-Shell: Definiere ''abstand = 5''. Dann führt ''f"{20:abstand}"'' zu einem Fehler, während ''f"{20:{abstand}}"'' oder ''f"{20:{abstand+3}}"'' das gewünschte Resultat liefern. Teste dies in der Python-Shell: Definiere ''abstand = 5''. Dann führt ''f"{20:abstand}"'' zu einem Fehler, während ''f"{20:{abstand}}"'' oder ''f"{20:{abstand+3}}"'' das gewünschte Resultat liefern.
  • lehrkraefte/snr/informatik/glf22/python/for.1663598010.txt.gz
  • Last modified: 2022/09/19 16:33
  • by Olaf Schnürer