2016-07-29 11 views
0

Viele Male passiert mir, dass ich 3 oder 4 verschachtelte Schleifen, das Problem war, dass mit der break Anweisung, konnte ich nur eine der Schleifen überspringen und der Rest dieser würde weiterhin fortfahren ...Wie alle verschachtelten Schleifen zu brechen? (Python)

Gibt es trotzdem, um alle verschachtelten Schleifen zu brechen?

ex:

a = 3 
b = 4 
c = 5 
while a <= 333: 
    b = a + 1 
    while b <= 500: 
     c = 1000 - a - b 
     while c < 500: 
      if c**2 == (a**2) + (b**2) and a + b + c = 1000: 
       print("this is the first number : ", a) 
       print("this is the second number : " ,b) 
       print("and this is the third number : " ,c) 
       break 
      else : 
       c +=1 
     b +=1 
    a +=1 
    print(a) 

Es ist der Code, den ich für Project Euler # 9 geschrieben haben!

https://projecteuler.net/problem=9

, wenn die Bedingung der if-Anweisung erfüllt ist ... wie kann ich verhindern, während diejenigen Schleifen vom Laufen?

+0

Sie könnten versuchen, eine boolesche Variable zu allen while-Schleifen hinzuzufügen und sie bei Bedarf auf false zu setzen –

Antwort

3

versuchen Sie, eine Funktion zu erstellen, und verwenden Sie return Anweisung.

0

Es gibt keine Möglichkeit, verschachtelte Schleifen mit einer break-Anweisung in Python auszubrechen.