Вот что у меня получилось:
def razmen (summa): if summa % 500 == 0: kol_vo_kupyr = summa // 500 return kol_vo_kupyr if summa % 100 == 0: kol_vo_kupyr = summa // 100 return kol_vo_kupyr if summa % 10 == 0: kol_vo_kupyr = summa // 10 return kol_vo_kupyr if summa % 2 == 0: kol_vo_kupyr = summa // 2 return kol_vo_kupyr kupyri = {'k_500':0, 'k_100':0, 'k_10':0, 'k_2':0} dengi = int(input('Введите сумму денег:')) a = razmen(dengi) print (a)
Все равно чего-то я не могу додумать… Если вводить ровные суммы, то в принципе все работает:
——————–
Введите сумму денег:2000
4
>>>
Введите сумму денег:300
3
>>>
Введите сумму денег:20
2
>>>
——————–
А вот если ввести не круглую сумму:
——————–
Введите сумму денег:324
162
>>>
——————-
она начинает считать по самым маленьким купюрам…
Мне так кажется, что там при делении, на 500 должен фигурировать еще остаток, который должен переходить дальше по циклу… Но если делить на 500 с остатком, то тогда как отбирать купюры наибольшим номиналом?