Mit rontottam el ebben a Python feladatban? Mi lenne a jó megoldás?
Sziasztok!
Ha valaki ért a Pythonhoz, tudna segíteni az alábbi feladatban?
"Peti pénzt kap. Hogy mennyit, azt kérje be a program. A kifizetéshez 5000, 1000, 500 és 100 Ft-os címletek állnak rendelkezésre – a maradékot Peti nem kapja meg. Feltételezzük, hogy minden címletből van elég, és a lehető legkevesebb számú pénz kerül kiosztásra. Írassuk ki, hogy milyen címletből hányat kapott Peti, és mennyit hagyott ott ajándékba."
És amit én eddig alkottam:
De ez így sajnos nem jó. Mit kellett volna máshogy csinálni?
Még kezdő szinten vagyok, ezért csak a legalapvetőbb műveleteket használhatom.
Köszönöm szépen előre is, ha valaki segít!
Lehet, hogy van több is de az egyik hiba a következő sorban van:
maradek = penz-(otezres+5000)
Helyesen:
maradek = penz-(otezres*5000)
Azért, mert szazas - maradek van a végén, pedig fordítva kellene.
Egyébként majd ha működik, próbáld meg egy ciklusban megoldani! :)
Őszintén megmondom, hogy nem értek a C-hez, de megpróbáltam megírni a programot:
import math
penz = 19850
maradek = penz
money = [5000,1000,500,100]
for n in money:
zseton = math.floor(maradek/n)
maradek = maradek - (zseton*n)
print(str(n),": ",str(zseton))
print("maradék: " + str(maradek))
Output:
5000 : 3
1000 : 4
500 : 1
100 : 3
maradék: 50
Helyesen:
Őszintén megmondom, hogy nem értek a Python-hoz, de megpróbáltam megírni a programot.
nem értem miért kell importálni én így oldottam meg.
cimlet_lits=[5000,1000,500,100]
osszeg=int(input("mennyit pénzt kap Peti?\n"))
for cimlet in cimlet_lits:
darab=int(osszeg/cimlet)
osszeg=osszeg-(darab*cimlet)
print(f"cimlet {cimlet} HUF db {darab} ")
print(f"maradek:{osszeg} HUF")
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!