Seite 1 von 1

For- Schleife und While Schleife

Verfasst: Samstag 10. November 2018, 14:08
von rejes
Hallo, ich habe leider schwierigkeiten in python. Ich wollte wissen wie man eine For-Schleife Formel in While - Schleife umwandelt.

string = " "
for x in range(1,10):
print("x is ", x)
string += "" + str(x)
print("Now, x is ", x)
print("All previous numbers: ", string)

Die hier muss ich zur while schleife umwandeln.. kann mir bitte jemand dabei helfen :( also zeigen oder tipps geben..

Danke im vorraus.
rejes

Re: For- Schleife und While Schleife

Verfasst: Samstag 10. November 2018, 15:23
von ThomasL
Deine for-schleife zählt von 1 bis 9, Anfang und Ende sind also bekannt.
Bei einer while schleife wird nach dem while eine Bedingung abgefragt und wenn diese True/Wahr ist, wird der eingerückte Codeblock darunter ausgeführt,
wenn nicht, wird mit dem nächsten Code auf gleicher Ebene fortgeführt.
Du musst also zuerst dafür sorgen, dass die Bedingung wahr ist und im Codeblock der Schleife dafür sorgen, dass die Zählervariable verändert wird,
so das die Bedingung nach der gewünschten Anzahl Durchläufe abbricht.

Re: For- Schleife und While Schleife

Verfasst: Samstag 10. November 2018, 16:06
von Sirius3
Eine while-Schleife hat hier doch gar keine Vorteile. Warum mußt Du das tun?

Re: For- Schleife und While Schleife

Verfasst: Samstag 10. November 2018, 16:11
von __blackjack__
@Sirius3: Wenn es eine Hausaufgabe ist, dann üblicherweise um zu zeigen das man verstanden hat, dass sich jede ``for``-Schleife als ``while``-Schleife ausdrücken lässt und das man das ”mechanisch” nach bestimmten Regeln, unabhängig von der ``for``-Schleife tun kann.

Edit: :twisted:

Code: Alles auswählen

string = ''
iterator = iter(range(1, 10))
while True:
    try:
        x = next(iterator)
    except StopIteration:
        break
    else:
        print('x is', x)
        string += str(x)
        print('Now, x is', x)
print('All previous numbers:', string)