
С клавиатуры вводятся два натуральных числа a, b (a<=b). Найти в диапазоне от a до b (включая границы) число, имеющее максимальную сумму делителей. (PASCAL)

//Pascal
var a,b, I, maxsumm, max : integer;
function summdel(x:integer):integer; //результат - сумма делителей х
var k,sum:integer;
begin
sum:=0;
for k := 1 to x div 2 + 1 do
if x mod k = 0 then sum:= sum+k;
summdel:=sum;
end;
begin
writeln(Введите границы a,b );
readln(a,b);
maxsumm := 1;
max := 1;
for i := a to b do
begin
if summdel(i) > maxsumm then
begin maxsumm:= summdel(i);
max := i;
end;
end;
writeLn(Максимальная сумма делителей - , maxsumm, число - ,max)
end.
Оцени ответ