Задание 3 Параграф 22 ГДЗ Семакин 9 класс (Информатика)
program poisk;
const
n = 10;
var
a: array [1..n] of integer;
i, k: integer;
//Сумма цифр числа
function sch(c: integer): integer;
var
s: integer;
begin
s := 0;
while c > 0 do
begin
s := s + c mod 10;
c := c div 10
end;
sch := s;
end;
begin
writeln(‘ Формирование и вывод исходного массива’);
randomize;
for i := 1 to n do
begin
a[i] := random(899) +100;
write(a[i], ‘ ‘);
end;
writeln;
k := 0;
for i := 1 to n do
if sch(a[i]) mod 2 = 0 then inc(k);
writeln(‘Количество искомых элементов = ‘, k)
end.
Нужно просмотреть все элементы массива и для каждого числа найти сумму его цифр. Если сумма цифр чётная, увеличиваем счётчик на 1.
Для вычисления суммы цифр удобно использовать функцию, которая последовательно выделяет последнюю цифру числа и прибавляет её к сумме:
while c > 0 do
begin
s := s + c mod 10;
c := c div 10
end;
Затем в основном цикле проверяем условие:
$$\text{сумма цифр} \bmod 2 = 0$$
Если условие выполняется, то увеличиваем счётчик $$k$$.
program poisk;
const
n = 10;
var
a: array [1..n] of integer;
i, k: integer;function sch(c: integer): integer;
var
s: integer;
begin
s := 0;
while c > 0 do
begin
s := s + c mod 10;
c := c div 10;
end;
sch := s;
end;begin
writeln(‘Формирование и вывод исходного массива’);
randomize;
for i := 1 to n do
begin
a[i] := random(899) + 100;
write(a[i], ‘ ‘);
end;
writeln;
k := 0;
for i := 1 to n do
if sch(a[i]) mod 2 = 0 then inc(k);
writeln(‘Количество искомых элементов = ‘, k);
end.
Ответ
Программа подсчитывает количество элементов массива, сумма цифр которых является чётной.