Номер §1.1 ПМ 7

ГДЗ по информатике 9 класс, Босова 2023, страница 16

§. ПМ Поиск первого простого делителя

Попытайтесь самостоятельно записать алгоритм нахождения первого простого делителя, представленный на рис. 1.3, на известном вам языке программирования. Протестируйте свою программу на числах 121, 135 и 847. Если программа написана правильно, то результатами её выполнения будут числа 11, 5 и 7 соответственно.

На рис. 1.3: вводится натуральное число n>1n>1, переменной dd присваивается 2; пока nmodd>0n\mathbin{\mathrm{mod}}d>0, значение dd увеличивается на 1; затем выводится dd.

Решение

Запишем шаги схемы на Паскале. Операция mod даёт остаток от деления: при нулевом остатке текущий делитель подходит, и цикл заканчивается.

program FirstPrimeDivisor;
var
  n, d: integer;
begin
  readln(n);
  d := ;
  while n mod d <>  do
    d := d + ;
  writeln(d)
end.

Строка readln(n) считывает число. Присваивание d := начинает проверку с наименьшего простого числа. Цикл увеличивает d на единицу, если число n на него не делится. После остановки writeln(d) выводит наименьший делитель, больший единицы. Он обязательно прост: если бы было составным, один из его меньших делителей делил бы и , так что программа остановилась бы раньше.

Проверим указанные числа, прослеживая остатки:

Проверка делителей Первый нулевой остаток Вывод
Для остатки не равны нулю
Для остатки не равны нулю

Для программа остановится уже при , поэтому до проверки числа она не дойдёт. В напечатанной фразе об ожидаемых результатах, по-видимому, опечатка: действительно делит , но не является его первым простым делителем.

Ответ

Программа выводит: для — ; для — ; для — .

Помогло?

Нет твоего задания?Сфоткай, и ДЗмэн решит за пару секунд.

Решить по фото