напишите програму. пользователь пишет число от 0 до 999 а програма должна написать это число буквами
219
305
Ответы на вопрос:
Def number_to_words(number):
# Словари для преобразования чисел в слова
units = ['нуль', 'один', 'два', 'три', 'чотири', 'п\'ять', 'шість', 'сім', 'вісім', 'дев\'ять']
tens = ['десять', 'одинадцять', 'дванадцять', 'тринадцять', 'чотирнадцять', 'п\'ятнадцять', 'шістнадцять',
'сімнадцять', 'вісімнадцять', 'дев\'ятнадцять']
decades = ['нуль', 'десять', 'двадцять', 'тридцять', 'сорок', 'п\'ятдесят', 'шістдесят', 'сімдесят', 'вісімдесят', 'дев\'яносто']
hundreds = ['нуль', 'сто', 'двісті', 'триста', 'чотириста', 'п\'ятсот', 'шістсот', 'сімсот', 'вісімсот', 'дев\'ятсот']
if number < 0 or number > 999:
return 'Число має бути в межах від 0 до 999'
if number == 0:
return 'нуль'
words = ''
# Преобразование сотен
hundreds_digit = number // 100
if hundreds_digit > 0:
words += hundreds[hundreds_digit] + ' '
# Преобразование десятков и единиц
remainder = number % 100
if remainder >= 10 and remainder <= 19:
words += tens[remainder % 10] + ' '
else:
tens_digit = remainder // 10
if tens_digit > 0:
words += decades[tens_digit] + ' '
units_digit = remainder % 10
if units_digit > 0:
words += units[units_digit] + ' '
return words.strip()
# Получение числа от пользователя
number = int(input('Введіть число від 0 до 999: '))
# Преобразование числа в слова и вывод результата
result = number_to_words(number)
print(result)
Извините если не правильно, я не очень в этом разбираюсь
# Словари для преобразования чисел в слова
units = ['нуль', 'один', 'два', 'три', 'чотири', 'п\'ять', 'шість', 'сім', 'вісім', 'дев\'ять']
tens = ['десять', 'одинадцять', 'дванадцять', 'тринадцять', 'чотирнадцять', 'п\'ятнадцять', 'шістнадцять',
'сімнадцять', 'вісімнадцять', 'дев\'ятнадцять']
decades = ['нуль', 'десять', 'двадцять', 'тридцять', 'сорок', 'п\'ятдесят', 'шістдесят', 'сімдесят', 'вісімдесят', 'дев\'яносто']
hundreds = ['нуль', 'сто', 'двісті', 'триста', 'чотириста', 'п\'ятсот', 'шістсот', 'сімсот', 'вісімсот', 'дев\'ятсот']
if number < 0 or number > 999:
return 'Число має бути в межах від 0 до 999'
if number == 0:
return 'нуль'
words = ''
# Преобразование сотен
hundreds_digit = number // 100
if hundreds_digit > 0:
words += hundreds[hundreds_digit] + ' '
# Преобразование десятков и единиц
remainder = number % 100
if remainder >= 10 and remainder <= 19:
words += tens[remainder % 10] + ' '
else:
tens_digit = remainder // 10
if tens_digit > 0:
words += decades[tens_digit] + ' '
units_digit = remainder % 10
if units_digit > 0:
words += units[units_digit] + ' '
return words.strip()
# Получение числа от пользователя
number = int(input('Введіть число від 0 до 999: '))
# Преобразование числа в слова и вывод результата
result = number_to_words(number)
print(result)
Извините если не правильно, я не очень в этом разбираюсь
Популярно: Информатика
-
romaantonizin122.01.2020 12:03
-
nastiakosovic03.01.2020 23:32
-
Помогите141117.09.2021 03:08
-
Vileta070901.10.2021 20:45
-
katia617326.02.2023 10:30
-
IlonaLike20.05.2022 20:34
-
Denchik1507022.02.2021 16:38
-
MrBonnie08.04.2021 09:15
-
Пан200702.12.2020 05:05
-
systemka47011.02.2023 12:20