Задача на Python. Все вместе

Все вместе

Дано натуральное число. Напишите программу, которая вычисляет:

  1. количество цифр 3 в нем;
  2. сколько раз в нем встречается последняя цифра;
  3. количество четных цифр;
  4. сумму его цифр, больших пяти;
  5. произведение цифр, больших семи (если цифр больших семи нет, то вывести 1, если такая цифра одна, то вывести ее);
  6. сколько раз в нем встречается цифры 0 и 5 (всего суммарно).

Ввод

56639

Вывод

1
1
2
21
9
1

Ввод

56689932106

Вывод

1
3
6
44
648
2

код

a=int(input())
b=0
c=0
d=0
f=0
g=0
h=0
k=1
o=0
while a!=0:
    b=b%10
    d=b
    if b==3:
        c=c+1
    elif d==b:
        f+=1
    elif b%2==0:
        g+=1
    elif b>5:
        h+=b
    elif b>7:
        k=k*b
    elif (b==0) or b==5:
        o+=1
    a=a//10

    
print(c)
print(f)
print(g)
print(h)
if k==0:
    print(1)
else:
    print(k)
print(o)

Ответы (1 шт):

Автор решения: Ole Lukøje
def q3(value: str):
    return value.count('3')


def last_qty(value: str):
    return value.count(value[-1])


def evens(value: str):
    ints = list(map(int, value))
    return len([d for d in ints if d % 2 == 0])


def sum_more_5(value: str):
    ints = list(map(int, value))
    return sum([d for d in ints if d > 5])


def multi_7(value: str):
    ints = list(map(int, value))
    i = 1
    for d in ints:
        i *= d if d > 7 else 1
    return i


def qty05(value: str):
    ints = list(map(int, value))
    return len([d for d in ints if d == 0 or d == 5])


if __name__ == '__main__':
    inp = input()
    print(q3(inp))
    print(last_qty(inp))
    print(evens(inp))
    print(sum_more_5(inp))
    print(multi_7(inp))
    print(qty05(inp))
→ Ссылка