Найти натуральное число от 1 до 10000 с максимальной суммой делителей

code: #pascal
  1. Function MaxSum(I:Integer):Integer;
  2. Var J,S:Integer;
  3. Begin
  4.  S:=0;
  5.  For J:=1 to I Do
  6.  If I Mod J = 0 Then
  7.  S:=S+J;
  8.  MaxSum:=S;
  9. End;
  10.  
  11. Var I,Max:Integer;
  12. Begin
  13.  Max:=1;
  14.  For I:=2 to 10000 Do
  15.  If MaxSum(I) > MaxSum(Max) Then
  16.  Max:=I;
  17.  WriteLn(Max,' ',MaxSum(Max));
  18.  ReadLn;
  19. End.
Поделиться:

Похожие статьи: