Python program.Hol lehet ebben hiba?(bővebben lent)
A scriptnek ki kellene írnia, hogy a bevitt számok közül hány darab negatív szám van. Például így: Bemenet:5,3,-2,-3,-8 Kimenet:Negatív számok száma:3
Az én próbálkozásom ilyen lett:
n=int(input("Vigyen be egy számot:"))
i=0
NegatívSzámok=[]
while i<n:
a=input("Vigyen be egy számot:")
if a<0:
NegatívSzámok.append(a)
i=i+1
for i in NegatívSzámok:
print(i)
Miért nem íratod ki a "NegatívSzámok"-lista számosságát a "len()"-el???
pl.:
print(len(NegatívSzámok))
Egyrészt: A feladatleírás nem tesz említést arról, hogy a bevitt számokat el is kéne tárolnod, tehát elegendő egy számláló léptetése a ciklusban, a kiíráshoz pedig egyetlen print utasítás.
Másrészt: Természetesen ne használj ékezetes változóneveket, akkor sem, ha a fordítód megengedi.
Harmadrészt: A felhasználóval való kommunikációdon is csiszolhatnál még. Ez az ismétlődő "Vigyen be egy számot: " nem valami informatív.
print("A program összeszámolja az adatok között kapott negatív számokat.")
n = int(input("Írja be, hány számot fog beolvastatni: "))
i = 1
negativok_szama = 0
while i < n + 1:
a = input(str(i) + ". szám: ")
if a < 0: negativok_szama = negativok_szama + 1
i = i + 1
print(str(negativok_szama) + " negatív számot írt be.")
További 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!