Вычесть из суммы всех нечётных по порядку цифр сумму всех чётных по порядку
Нумерация цифр начинается с единицы и идёт справа налево. Приведенный ниже код - неверный.
n = input()
T = 0
i = 0
while i < len(n):
if i % 2 == 0:
T += int(n[i])
else:
T -= int(n[i])
i = i + 1
print(T)
Ответы (2 шт):
Автор решения: CrazyElf
→ Ссылка
Ну код то написать не сложно. Только боюсь вы его не сможете преподавателю объяснить.
print(sum(int((i % 2 - 0.5) * 2) * int(x) for i, x in enumerate(reversed(input()), 1)))
Автор решения: MBo
→ Ссылка
Если ваш код подправить:
n = input()
leng = len(n)
T = 0
for i in range(len(n)):
if i % 2 == 0:
T += int(n[leng-1-i])
else:
T -= int(n[leng-1-i])
print(T)
А можно и так:
n = int(input())
s = [0,0]
d = 1
while n:
s[d%2] += n%10
n //= 10
d += 1
print(s[1]-s[0])