Можете дать анализ решения задачи (Словесное описание действий, необходимых для решения этой задачи) по готовому коду. PASCAL Задача звучит так: "Задано число P. Определить количество его четных и нечетных делителей"

Вот код:

var P,i,kc,kn:integer;

begin

write('P='); //вводим целое число

readln(P);

kc:=0; //четные делители

kn:=0; //нечетные делители

for i:=2 to P do //от 2 до P

if P mod i=0 then //если n делится на i, это делитель

if odd(i)then inc(kn) else inc(kc); //нечетный или четный

writeln('Количество четных делителей=',kc,' нечетных=',kn)

end.

Саша7647 Саша7647    1   08.06.2020 02:15    0

Ответы
ibra16 ibra16  15.10.2020 13:22
var P,i,kc,kn:integer;

Объявляем переменные P,i,kc,kn как целочисленный тип.

begin

Начало программы.

write('P='); //вводим целое число

Выводим на экран "P=".

readln(P);

Считываем переменную P с клавиатуры и переходим на новую строчку.

kc:=0; //четные делители

Присваиваем переменной kc, в которой будет храниться количество четных делителей, значение 0.

kn:=0; //нечетные делители

Присваиваем переменной kn, в которой будет храниться количество нечетных делителей, значение 0.

for i:=2 to P do //от 2 до P

Объявляем цикл с переменной i от 2 до P (до числа, которое мы ввели с клавиатуры).

if P mod i=0 then //если n делится на i, это делитель if odd(i)then inc(kn) else inc(kc); //нечетный или четный

Если остаток от деления P на i равен нулю, то есть P делится на i без остатка, то смотрим: если i нечетная, то увеличиваем kn на 1, иначе (то есть если i четная), увеличиваем kc на 1.

writeln('Количество четных делителей=',kc,' нечетных=',kn)

Выводим на экран:  "Количество четных делителей=",    значение переменной kc,     " нечетных=",      значение переменной kn".

end.

Конец программы.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика