Задача: Счастливый билет

Опубликован: 13.09.2024 34

Условие: напишите программу, которая проверит является ли введенный пользователем номер билета "счастливым".

"Счастливым" называют билет с номером, в котором сумма первой половины цифр равна сумме второй половины цифр. Номера могут быть произвольной длины. Единственное условие — количество цифр всегда четно.

Например: Билет с номером 385916 — счастливый, так как 3 + 8 + 5 == 9 + 1 + 6.

Решение:

def is_happy_ticket(ticket: str):
    sum_l = sum([int(n) for n in ticket[:int(len(ticket)/2)]])
    sum_r = sum([int(n) for n in ticket[int(len(ticket)/2):]])
    return 'счастливый' if sum_l == sum_r else 'не счастливый'


while True:
    ticket = input('Введите номер билета (с четным количеством цифр): ')
    if ticket != '' and len(ticket) % 2 == 0:
        break
    else:
        print('Ошибка. Номер билета должен быть четным!')

print(f"Билет с номером {ticket} {is_happy_ticket(ticket)} !")

Похожие посты

Задача: Решение квадратного уравнения

Задача: Тренажер таблицы умножения

Задача: Наибольший числовой палиндром

Задача: Разложение числа на простые множители

Комментариев нет.