М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
nikihouston342
nikihouston342
06.01.2022 17:56 •  Информатика

Расставьте единицы измерения в порядке убывания


Расставьте единицы измерения в порядке убывания

👇
Открыть все ответы
Ответ:
AndrewLoveRem
AndrewLoveRem
06.01.2022

Cумма равна 35.

Процедура печатает число, если в неё передается n, большее единицы, и при этом сначала срабатывают две процедуры, вложенные в неё.

Передаётся число 10. Оно больше 1. Начинается процедура от числа 7. Оно больше 1. Начинается процедура от числа 4. Оно больше 1. Начинается процедура от числа 1. Оно не больше 1.

Возвращаемся к числу 4. Начинается f(4 div 2), то есть процедура от числа 2. Оно больше 1. Начинается процедура от числа -1. Оно меньше 1. Начинается процедура от 2 div 2, т.е от 1. Число не больше 1. Обе процедуры для двойки выполнены. Печатается 2.

Обе процедуры для числа 4 тоже выполнены. Печатается 4.

Возвращаемся к числу 7. Выполняется вторая процедура для 7, то есть f(3). Обе её процедуры ничего не печатают. Тогда она сама печатает 3.

Обе процедуры для числа 7 выполнены. Печатается 7.

Теперь к самому первому числу 10. Начинается вторая его процедура, то есть от числа 5. Начинается первая процедура от 5, то есть f(2). Обе процедуры для числа 2 ничего не делают, печатается 2. Вторая процедура от 5 тоже 2. Аналогично печатается 2.

Обе процедуры числа 5 выполнены. Печатается 5.

Обе процедуры числа 10 выполнены. Печатается 10.

Ура! осталось посчитать сумму напечатанного.

2+4+3+7+2+2+5+10=35

4,5(42 оценок)
Ответ:
sabinab13
sabinab13
06.01.2022
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.

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

4,4(19 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ