Problem z pętlą while

1

Cześć, jest to mój pierwszy post na tej stronie. Nie znalazłam nigdzie takiego samego wpisu , tj dotyczącego poprawności zapisu formuły. Zaczęłam się niedawno uczyć pythona od podstaw. Razem z lektorem kursu krok po kroku wpisywałam na platformie PyCharm formuły naszych ćwiczeń. Ćwiczenie polegało na tym, by wpisywać liczby tak długo, aż użytkownik "wylosuje" liczbę x= 375: Formuła wyglądała tak:

x = 375
print("Wylosowałem liczbę z zakresu 1 - 1000. Spróbuj zgadnąć: ")
podana = int(input("Podaj liczbę: "))
while podana != x:
    print("Niestety to inna liczba.Próbuj dalej")
    print(int(input("Podaj liczbę: ")))

print("Gratuluję, to była liczba: ", (x))

Problem polega na tym, że gdy wpisuję nieprawidłowe liczby, następnie wyświetlą mi się komunikaty "Niestety to inna liczba. Próbuj dalej" i "podaj liczbę"" a następnie wpiszę prawidłową wartość 375, to program ponownie prosi o podanie liczby zamiast wyświetlić "Gratuluję, to była liczba: ", (x). Jakby program nie ogarniał:

Podaj liczbę: 4
4
Niestety to inna liczba.Próbuj dalej
**Podaj liczbę: 375
375
Niestety to inna liczba.Próbuj dalej
Podaj liczbę:**

Coś jest chyba nie tak z moim programem, bo przepisałam od lektora z kursu znak po znaku i jemu wychodzi a mnie nie. Tak samo było z pierwszym prostszym ćwiczeniem dotyczącym pętli while. Jestem sfrustrowana, bo nie mogę ruszyć dalej a nie wiem co robię nie tak.
Proszę o pomoc, z góry dzięki za podpowiedzi ;)

7

W pętli porównujesz wartość zmiennej podana (while podana != x), lecz tę zmienną ustawiasz tylko raz (przed pętlą) i nie zmieniasz jej wartości już później - spróbuj tak:

while podana != x:
    print("Niestety to inna liczba.Próbuj dalej")
    podana = int(input("Podaj liczbę: "))
0
Patryk27 napisał(a):

W pętli porównujesz wartość zmiennej podana (while podana != x), lecz tę zmienną ustawiasz tylko raz (przed pętlą) i nie zmieniasz jej wartości już później - spróbuj tak:

while podana != x:
    print("Niestety to inna liczba.Próbuj dalej")
    podana = int(input("Podaj liczbę: "))

Tak! Zadziałało ! :) Dziękuję ślicznie :) :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1