Python — точное изменение — функцииPython

Программы на Python
Ответить
Anonymous
 Python — точное изменение — функции

Сообщение Anonymous »

Еще один общий вопрос NOOB: я не уверен, почему мой ответ печатает как десятичное значение. Кроме того, в лаборатории ожидается, что цены будут в первую очередь перечислены, не уверены, как я это испортил? Я ценю помощь! Типы монет - это копейки, никели, цента и кварталы. Затем напишите основную программу, которая считывает общую сумму изменения в качестве целочисленного ввода, вызывает ext_change () и выводит изменение, один тип монеты на строку. Используйте единственные и множественные названия монет по мере необходимости, например, 1 пенни против 2 копейки. Вывод «Без изменений», если вход равен 0 или меньше. < /P>
Ваша программа должна определить и вызвать следующую функцию. Функция exact_change () должна возвращать num_pennies, num_nickels, num_dimes и num_quarters.
def exact_change (user_total) < /p>
def exact_change(user_total):
return(num_dollars, num_quarters, num_dimes, num_nickles, num_pennies)

if __name__ == '__main__':
input_val = float(input())
num_dollars = input_val // 100
rem=input_val % 100
num_quarters = rem // 25
rem = rem % 25
num_dimes = rem // 10
rem = rem % 10
num_nickles = rem // 5
rem = rem % 5
num_pennies = rem

if input_val 1:
print(conv_dollar + ' dollars')

num_quarters = rem // 25
conv_quarter = str(num_quarters)
rem = rem % 25
if num_quarters == 1:
print(conv_quarter + ' quarter')
elif num_quarters > 1:
print(conv_quarter + ' quarters')

num_dimes = rem // 10
conv_dime = str(num_dimes)
rem = rem % 10
if num_dimes == 1:
print(conv_dime + ' dime')
elif num_dimes > 1:
print(conv_dime + ' dimes')

num_nickels = rem // 5
conv_nickel = str(num_nickels)
rem = rem % 5
if num_nickels == 1:
print(conv_nickel + ' nickel')
elif num_nickels > 1:
print(conv_nickel + ' nickels')

num_pennies = rem
conv_penny = str(num_pennies)
rem = rem % 1
if num_pennies == 1:
print(conv_penny + ' penny')
elif num_pennies > 1:
print(conv_penny + ' pennies')

< /code>
1: сравнивать выход
0/1
Вывод отличается. См. Основные моменты ниже.
Специальная легенда символа
input
45
your whip
1.0 квартал
2.0 Dimes
ожидаемый выход
2 DIMES
1 четверть
2: сравните вывод
1/1
input
0
your owput
без изменения
3: Сравните выход
0/2
Выход отличается. См. Основные моменты ниже.
Special Scire Legend
input
156
your whip
1.0 доллар
2.0 Кварталы
1.0 Nickel
1.0 Пенни
ожидаемый выход
1 Penny
1 Nickel
6 кварталов
4: модульный тест
0/3
exat_change (300). Должен вернуть 0, 0, 0, 12
nameerror: имя 'input_val' не определено
5: модульный тест
0/3
exat_change (141). Должен вернуть 1, 1, 1, 5
nameerror: имя 'input_val' не определено < /p>

Подробнее здесь: https://stackoverflow.com/questions/746 ... -functions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»