Урок №32. Анализ алгоритмов.
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4, но не кратных 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число кратное 4 и не кратное 7. Количество чисел не превышает 1000. Введенные числа не превышают 30000.
Программа должны вывести одно число: кратных 4, но не кратных 7.

Дана задача на обработку чисел последовательности натуральных чисел, в которой задано количество чисел. В этой последовательности нужно определить количество чисел, удовлетворяющих условию, что они одновременно кратны 4, но не кратны 7.
Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4, но не кратных 7. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число кратное 4 и не кратное 7. Количество чисел не превышает 1000. Введенные числа не превышают 30000.
Программа должны вывести одно число: кратных 4, но не кратных 7.
Для решения задачи будем использовать переменные:
- n — для обозначения количества чисел в последовательности;
- x — для обозначения самих чисел из последовательности;
- k — количество искомых чисел, удовлетворяющих условию;
- i — параметр цикла.
Все используемые переменные целочисленные.

Ввод количества чисел осуществляется командой :
Ввод количества чисел
n=int(input())Поскольку задано количество чисел последовательности, то для ввода самих чисел можно использовать цикл по переменной.
Ввод последовательности чисел
for i in range(n):
x=int(input())
В задаче представлено составное условие, связанное логической связкой И, поскольку они должны выполняться одновременно. Запишем их командами на Python. Число кратно 4, если остаток от деления этого числа на 4 равен нулю. Число не кратно 7, если остаток от деления числа на 7 не равен нулю.
Анализ числа
if x%4==0 and x%7!=0:
В теле цикла нужно анализировать числа последовательности на соответствие условию и увеличивать счётчик на единицу, когда условие выполнено. До цикла нужно присвоить счётчику значение ноль.
Обновление счетчика
k=k+1
После завершения цикла нужно вывести значение счётчика.
Вывод счетчика
print(k)
В итоге получаем такую программу.
n=int(input())
k=0
for i in range(n):
x=int(input())
if x%4==0 and x%7!=0:
k=k+1
print(k)
Проверим работу программы на исходных данных из условия задачи.
Программа на основе алгоритма работает корректно на исходных данных, представленных в задаче.