Предмет: Информатика, автор: ndanilov99

Превратить функцию в процедуру

function KolDel(n:integer):integer;
var i,k:integer;
begin
k:=0;
for i:=1 to n do
if n mod i=0 then
k:=k+1;
KolDel:=k;
end;
var m,n,i:longint;
mx:byte;
begin
repeat
writeln('Введите интервал, 2 натуральных числа, второе болше первого');
readln(m,n);
until n>m;
mx:=1;
for i:=m to n do
if KolDel(i)>mx then mx:=KolDel(i);
writeln('Наибольшее количество делителей имеют числа:');
for i:=m to n do
if KolDel(i)=mx then write(i,' ');
writeln;
write('количество=',mx);
readln
end.

Ответы

Автор ответа: petyaGavrikov
0
procedure KolDel(n:integer; var k:integer);
var i:integer;
begin
k:=0;
for i:=1 to n do
 if n mod i=0 then k:=k+1;
end;
var m,n,i:longint;
md,mx:integer;
begin
repeat
writeln('Введите интервал, 2 натуральных числа, второе больше первого');
readln(m,n);
until n>m;
mx:=1;
for i:=m to n do
 begin
 KolDel(i,md);
 if md>mx then mx:=md;
 end;
writeln('Наибольшее количество делителей имеют числа:');
for i:=m to n do
 begin
 KolDel(i,md);
 if md=mx then write(i,' ');
 end;
writeln;
write('количество=',mx);
readln
end.

Пример:
Введите интервал, 2 натуральных числа, второе больше первого
10 100
Наибольшее количество делителей имеют числа:
60 72 84 90 96
количество=12
Похожие вопросы
Предмет: География, автор: Jcjcjcj5
Предмет: Химия, автор: krl55