Семикласники придумали гру. Якщо у квитку на сеанс фільму, який
містить тризначний номер, сума цифр буде дорівнювати 20, то квиток
щасливий. Складіть програму, яка за введеним (користувач один раз вводить
трьохзначне число відразу) значенням номера обчислює їх суму.
Виконання:
Реалізуйте виконання проєкту в середовищі Python використовуючи
блок-схему нижче:
Початок
Ввести число abc
a=abс//100
bс=abc-a*100
b=bc//10
c=abc-(a*100+b*10)
rez=a+b+c
Вивести число rez
Кінець
Язык Python
Answers & Comments
Відповідь:
#Примочка для перевірки корректності вводу, при небажанні можна закоментувати
#Клас для створення свого винятку
class NotInRange(Exception):
pass
#Функція для перевірки корректного вводу та безкінечноциклічного повторення запиту на зчитування числа
def three_number_input():
while True:
try:
number = int(input("Введіть трьохзначне число:\n"))
if(number>999 or number<100):
raise NotInRange
return number
except ValueError:
print("Ви ввели не число. Будь ласка, переконайтеся у правильності вводу.")
except NotInRange:
print("Ваше число не в межах [100;999]")
number = three_number_input()
#a = number//100
#b = number%100//10
#c = number%10
total = 0
copy = number
while(copy != 0):
total+=copy%10
copy//=10
print(f"Квиток під номером {number} щасливий") if total==20 else print(f"Квиток під номером {number} звичайний")
Пояснення:
Для знаходження було використано копію числа, оскільки циклічно повторювалися операції взяття за модулем та цілочисленного ділення на 10.