С клавиатуры вводятся два натуральных числа 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.

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку
×