Функция выводит None, хотя не должна
Программа должна конвертировать рубли в доллары или юани. Если не введено значение в currency (USD, CNY), программа должна считать, что перевод в доллары. Выводит вместо числового значения None.
def rub_to_cny(rub_amount):
rub_amount / 77.99 * 4.66
def rub_to_usd(rub_amount):
rub_amount / 77.99
def rub_to_currency(rub_amount, currency):
if currency == "USD" or not currency:
print(rub_to_usd(rub_amount))
elif currency == "CNY":
print(rub_to_cny(rub_amount))
elif type(currency) != str:
print("Введенное значение некорректно")
def main():
print("Введите количество рублей и сокращенное название валюты")
rub_amount = float(input())
currency = input()
return rub_to_currency(rub_amount, currency)
print(main())
Ответы (1 шт):
Автор решения: dudha369
→ Ссылка
Я немного исправил код вашей программы и она стала работать.
def rub_to_cny(rub_amount):
return (rub_amount / 77.99 * 4.66)
def rub_to_usd(rub_amount):
return (rub_amount / 77.99)
def rub_to_currency(rub_amount, currency):
if currency == "USD":
print(rub_to_usd(rub_amount))
elif currency == "CNY":
print(rub_to_cny(rub_amount))
else:
print(rub_to_usd(rub_amount))
def main():
print("Введите количество рублей и сокращенное название валюты")
rub_amount = float(input("количество рублей: "))
currency = input("сокращенное название валюты: ")
rub_to_currency(rub_amount, currency)
if __name__=="__main__":
main()