// Напишите программу, которая в последовательности натуральных чисел определяет количество //чисел, кратных 3. Программа получает на вход количество чисел в //последовательности, а затем сами числа. В последовательности всегда имеется число, //кратное 3. Количество чисел не превышает 100. Введённые числа не превышают 300. //Программа должна вывести одно число - количество чисел, кратных 3.
Var i,j,x :word; n :integer; begin writeln('Введите количество цифр в последовательности'); Readln (j); if j>100 then //Проверка накличество чисел в последовательности begin writeln ('По условия задачи цифр не должно быть более 100'); writeln ('Введите количесво цифр еще раз'); readln (j); end; for i:=1 to j do begin Writeln ('Введите ',i,' число'); readln (n); if n>300 then //проверка максимального значения числа begin writeln ('Данное число не удовлетворяет условиям задачи (>300'); writeln ('Введите его еще раз'); readln (n); end; n:= n mod 3; if n=0 then x:=x+1; end; Writeln ('Количество чисел, кратных 3:'); Writeln (x); end.
307 | 153 ост 1
153 | 76 ост 1
76 | 38 ост 0
38 | 19 ост 0
19 | 9 ост 1
9 | 4 ост 1
4 | 2 ост 0
2 | 1 ост 0
1
Выписываем 1 и все остатки снизу вверх: 100110011.
В двоичном представлении 5 единиц.