Составить программу вывода на экран наибольшего делителя натурального числа N, большего 1. 3 цикла
Составить программу вывода на экран наибольшего делителя
натурального числа N, большего 1.
3 цикла
Ответ(ы) на вопрос:
Гость
1. Для цикла For есть решение выложенное выше от Srzontmp.
2. Почти ничего не меня получим код для цикла while:
var
i, n, k: integer;
begin
i := 2;
readln(n);
while i <= n div 2 do begin
if (n mod i) = 0 then k := i;
i:=i+1;
end;
writeln('наибольший делитель ', n, ' = ', k);
end.
3. Аналогично для цикла Repeat:
var
i, n, k: integer;
begin
i := 2;
readln(n);
repeat
if (n mod i) = 0 then k := i;
i:=i+1;
until i> n div 2;
writeln('наибольший делитель ', n, ' = ', k);
end.
Гость
Решение в прикрепленном файле в 3-х циклах, но работать эта программа будет медленнее,
если число N - простое.
Не нашли ответ?
Похожие вопросы