while-Schleifen – Aufgabe 1
Noch nicht begonnen
Aufgabenstellung
Wann eignet sich while besonders?
Ausgabe bzw. Vorschau
Tipp anzeigen
Lösung anzeigen
while wiederholt abhängig von einem Zustand.
BPE 5.2.4 · J1
Du wiederholst Schritte bis zu einer Abbruchbedingung und verhinderst Endlosschleifen.
Geschätzte Lernzeit: 50 Minuten
Noch nicht begonnen
while prüft vor jedem Durchlauf eine Bedingung. Damit die Schleife endet, muss sich ein beteiligter Zustand in Richtung Abbruch verändern. Für Benutzereingaben wird so lange erneut gefragt, bis sie gültig sind.
wert = 1
while wert < 20:
wert *= 2
print(wert)Plane bei jeder while-Schleife Initialisierung, Bedingung und Aktualisierung gemeinsam.
Begründe deinen Lösungsweg, beachte Randfälle und verwende passende Fachbegriffe. Die Übungen sind selbst erstellt, keine offiziellen Prüfungsaufgaben.
Prüfe deine Lösung automatisch. Bei Bedarf helfen dir ein Tipp und anschließend die Musterlösung.
Noch nicht begonnen
Wann eignet sich while besonders?
while wiederholt abhängig von einem Zustand.
Noch nicht begonnen
Welche Endausgabe entsteht?
x = 1
while x < 10:
x *= 2
print(x)
Die Werte werden 2, 4, 8 und 16.
Noch nicht begonnen
Warum endet diese Schleife nicht? while x < 5: print(x)
Ohne Aktualisierung bleibt der Wahrheitswert unverändert.
Noch nicht begonnen
schritte_bis(start, grenze) erhöht start mit while um 1 und liefert die Anzahl der Schritte.
def schritte_bis(start, grenze):
schritte = 0
while start < grenze:
start += 1
schritte += 1
return schritte
Noch nicht begonnen
Implementiere ziffernsumme(n) für nichtnegative ganze Zahlen mit while, // und %.
def ziffernsumme(n):
summe = 0
while n > 0:
summe += n % 10
n //= 10
return summe
Noch nicht begonnen
zweierpotenz_ab(grenze) liefert die kleinste Zweierpotenz, die mindestens grenze ist.
def zweierpotenz_ab(grenze):
wert = 1
while wert < grenze:
wert *= 2
return wert
Noch nicht begonnen
Lies ganze Zahlen ein, bis eine Zahl von 1 bis 10 eingegeben wird. Gib diese gültige Zahl aus.
zahl = int(input())
while zahl < 1 or zahl > 10:
zahl = int(input())
print(zahl)
Noch nicht begonnen
Wie oft läuft der Schleifenkörper?
n = 20
while n > 2:
n = n // 2
20 wird zu 10, dann 5, dann 2: drei Durchläufe.
Bearbeite Aufgaben, um deine Auswertung zu sehen.