Kezdőoldal » Számítástechnika » Programozás » Mit rontottam el ebben a...

Mit rontottam el ebben a Python feladatban? Mi lenne a jó megoldás?

Figyelt kérdé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:

[link]


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!



2021. okt. 10. 13:39
 1/8 anonim ***** válasza:

Lehet, hogy van több is de az egyik hiba a következő sorban van:

maradek = penz-(otezres+5000)

Helyesen:

maradek = penz-(otezres*5000)

2021. okt. 10. 14:09
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:
Jajj, az egy elütés, köszönöm szépen! :) Viszont az az egész képlet nem jó, mert a maradékot teljesen rosszul számolja 😅
2021. okt. 10. 14:20
 3/8 Pelenkásfiú ***** válasza:
100%

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! :)

2021. okt. 10. 14:23
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:
Tééényleg! Így már végre működik, köszönöm szépen! :D
2021. okt. 10. 15:20
 5/8 anonim ***** válasza:
48%

Ő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

2021. okt. 10. 15:36
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:
30%

Helyesen:

Őszintén megmondom, hogy nem értek a Python-hoz, de megpróbáltam megírni a programot.

2021. okt. 10. 16:01
Hasznos számodra ez a válasz?
 7/8 anonim ***** válasza:

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")

2021. okt. 10. 21:13
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

sajna a tabokat hiába írtam jól. Látom a válaszomnál már nincs meg itt egy link a képhez :


[link]

2021. okt. 10. 21:21
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!