ДАЮ 50 БАЛЛОВ!!!
Вводится шестизначное натуральное число. Проверить, является ли оно счастливым (сумма первых трёх цифр равна сумме последних трёх цифр) и, если не является, вывести ближайшее счастливое число.
Ответы
number = [int(i) for i in input().strip()]
if sum(number[:3]) == sum(number[3:]):
print('Число является счастливым')
else:
print('Число несчастливое')
str_numb = ''
for i in number:
str_numb += str(i)
for numb in range(int(str_numb), 1000000):
if sum(int(j) for j in str(numb)[:3].strip()) == sum(int(k) for k in str(numb)[3:].strip()):
print(f'Ближайшее счастливое число - {numb}')
break
Ответ:
Самый простой вариант просто найти счастливое число или нет вот (без вывода ближайшего числа):
a = input('Введите 6-ти значное число:')
b = list(map(int, str(a))) #разбиваем на символы строку с числами на список
if len(b)==6:
if b[0] + b[1] + b[2] == b[3] + b[4] + b[5]:
print("Счастливое")
elif b[0] + b[1] + b[2] > b[3] + b[4] + b[5] or b[0] + b[1] + b[2] < b[3] + b[4] + b[5]:
print("Не счастливое")
c = b[0] + b[1] + b[2] - b[3] + b[4] + b[5]
Объяснение:
С выводом ближайшего пока не пойму...
if sum(int(j) for j in str(numb)[:3].strip()) == sum(int(k) for k in str(numb)