Python

Помогите решить информатику на языке ПИТОН!!!!!!!!!!!!!! с помощью циклов while и for

1) Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 5, но не кратных 7. Программа получает на вход натуральные числа, количество натуральных чисел неизвестно, последовательность чисел заканчивается числом 0(0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введённые числа не превышают 30000. Программа должна вывести одно число: сумму чисел кратных 5, но не кратных 7.
входные данные: 35; 15; 42; 75; 0
выходные данные: 90

2) Сколько раз будет выполнено тело цикла при n=6?
for k in range(1,n,2):
a+=1

3) Написать программу для нахождения произведение чисел от 1 до N включительно(N вводит пользователь). Тест для проверки программного кода придумать самим.
Задача 1.
 sum = 0 
num = int(input())
while num != 0:
for i in range(num):
if num % 5 == 0 and num % 7 != 0:
sum += num
num = int(input())
print(sum)
Задача 2.
При n=6, тело цикла будет выполнено два раза. Это происходит потому, что цикл for проходит по значениям от 1 до n-1 с шагом 2, то есть 1 и 3, и останавливается перед 5, так как 5 не меньше n-1=5. Таким образом, тело цикла будет выполнено для k=1 и k=3, то есть два раза. Ответ: 2.
Задача 3.
 n = int(input()) 
product = 1
for i in range(1, n+1):
product *= i
print(product)
Эта программа считывает число n из входных данных, затем использует цикл for для умножения всех чисел от 1 до n включительно. Начальное значение переменной product равно 1, а затем каждое число от 1 до n включительно умножается на product. В конце программа выводит произведение всех чисел от 1 до n включительно.
Пример теста для проверки программы:
Входные данные: 5
Выходные данные: 120
Примерный порядок выполнения программы:
Считывание числа n из входных данных, которое равно 5.
Инициализация переменной product со значением 1.
Цикл for выполняется 5 раз, умножая product на каждое число от 1 до 5 включительно.
В конце цикла product равно произведению всех чисел от 1 до 5 включительно, то есть 120.
Вывод значения product, равного 120.
Too Фирма Нанар
14 273
Лучший ответ
Олег Ковалевич спасибо, но в первой задаче выходные данные не соответствуют, сумма должна быть 90, а выводит 5850
1.
 print(sum(i for i in map(int, iter(input, '0')) if i % 7 and i % 5 == 0)) 

2. 3 раза: для k равного 1, 3, 5

3.
 import math
print(math.factorial(int(input())))
Andrey Ivashin
Andrey Ivashin
62 468