i = 1
for k in (range(1, 21)):
if i % k > 0:
for j in range(1, 21):
if (i*j) % k == 0:
i *= j
break
print (i)
Ausgang: 232792560
Warum wird die if-Anweisung fortgesetzt, wenn die Bedingung fehlschlägt/fortfahren, nachdem die Bedingung erfüllt wurde?
Dieser Code geschrieben wird von allen Zahlen zwischen 1 bis 20.
Meine Frage das kleinste Vielfache teilbar zu finden ist, warum nicht auch weiterhin die "if i % k > 0"
wenn 1 % 1 == 0?
(Linie 3)
und warum es weitergeht nach "if (i*j) % k == 0"
(Zeile 5) einmal j und k sind 2 statt zu brechen?
Nicht sicher, wie das Programm funktionieren soll, aber ein 'break' bricht nur eine' for' Schleife. Für eine "vollständige Unterbrechung" können Sie eine Anweisung "return" in einer Funktion verwenden. – Julien