Ez a python program miért nem működik megfelelően?
1. változat:
#Felhasználónév és jelszó kérése
print ('Adja meg felhasználónevét és jelszavát a belépéshez!')
fh= input ()
jsz= input ()
if fh == 10:
print ('Felhasználnónév elfogadva.')
else:
print ('Felhasználónév elutasítva.')
if jsz == 5:
print ('Jelszó elfogadva.')
else:
print ('Jelszó elutasítva.')
print ('Belépés megtagadva.')
2. változat:
#Felhasználónév és jelszó kérése
print ('Adja meg felhasználónevét és jelszavát a belépéshez!')
fh, jsz= input (), input ()
felhasz = 10
jelszó = 5
if fh == felhasz:
print ('Felhasználnónév elfogadva.')
else:
print ('Felhasználónév elutasítva.')
if jsz == jelszó:
print ('Jelszó elfogadva.')
else:
print ('Jelszó elutasítva.')
print ('Belépés megtagadva.')
Mintha fordítva lenne bekötve. Ha a 10-t illetve az 5-t beírom akkor "megtagadja a belépést", holott a megfelelő számokat adom meg.
Továbbá, hogyan lehetne beállítani egy olyan ciklust, hogy kérdezzen rá pl a jelszóra 3x.
Aztán ha azt akarom, hogy ha jól van megadva a felhasz. és a jelszó akkor "csináljon valamit". Mármint hogyan kell belekezdeni annak a blokknak a leprogramozásába? Konyhanyelven ezt akarom pl: ha jó a felhasz. és a jelszó akkor lépj be az adott mappába (vagy akármi).
Először is: ha a felhasználónév nem egyezik, akkor is megvizsgálod a jelszót - ez máris egy hiba. Másodszor: az input() stringet fog visszaadni, te pedig integerrel (egész számmal) hasonlítod össze. (10 == "10" JavaScriptben működne, mert ott külön === operator van a type összehasonlítására is, de Pythonban a 10 == "10" False-t ad vissza.)
Valahogyan így próbáld meg:
https://pastebin (pont) com/Xzuw9qYu
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!