Размен

Представим, что разрабатывается ПО для кассы самообслуживания. Одна из функций – расчет сдачи при оплате наличными.

Необходимо написать программу, на вход которой подается сумма сдачи в центах. В ответ на экран необходимо вывести количество монет каждого номинала, чтобы при минимальном количестве монет набрать нужную сумму.

Допустим, в распоряжении имеются монеты 1 и 2 доллара, а также 25, 10, 5 и 1 цент.



##
# Рассчитываем минимальное количество монет для представления указанной суммы
#
CENTS_PER_TOONIE = 200
CENTS_PER_LOONIE = 100
CENTS_PER_QUARTER = 25
CENTS_PER_DIME =10
CENTS_PER_NICKEL =5
# Запрашиваем у пользователя сумму в центах
cents = int(input("Введите сумму в центах: "))
# Определим количество двухдолларовых монет путем деления суммы на 200. Затем вычислим
# оставшуюся сумму для размена, рассчитав остаток от деления
print(" ", cents // CENTS_PER_TOONIE, "двухдолларовых монет")
cents = cents % CENTS_PER_TOONIE
# Повторяем эти действия для остальных монет
print(" ", cents // CENTS_PER_LOONIE, "однодолларовых монет")
cents = cents % CENTS_PER_LOONIE
print(" ", cents // CENTS_PER_QUARTER, "25–центовых монет")
cents = cents % CENTS_PER_QUARTER
print(" ", cents // CENTS_PER_DIME, "10–центовых монет")
cents = cents % CENTS_PER_DIME
print(" ", cents // CENTS_PER_NICKEL, "5–центовых монет")
cents = cents % CENTS_PER_NICKEL
# Отобразим остаток в центах
print(" ", cents, "центов")


Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: