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

Найдите ошибку. ( выводит просто большее число )
Найти натуральное число из интервала от a до b с максимальной суммой делителей.
var max,i,j,k,a,b,z:integer;
begin
k:=0;
max:=0;
readln(a,b);
for i:=a to b do
begin
for j:=1 to i do
if (i mod j)=0 then
k:=k+1;
if k>max then
begin
max:=k;
z:=i;
end;
end;
writeln (z);
end.

Ответы

Автор ответа: Аноним
0
var
  max,i,j,s,a,b,z:integer;
begin
  max:=0;
  Readln(a,b);
  for i:=a to b do begin
    s:=0;
    for j:=1 to i do
      if i mod j=0 then s:=s+j;
    if s>max then begin max:=s; z:=i end
  end;
  Writeln(z)
end.

Похожие вопросы
Предмет: Алгебра, автор: dianamishenko8
Предмет: Математика, автор: madinatsurkan
Предмет: Математика, автор: виолетта89880643081