Найти на отрезке (n;m) натуральное число, имеющие наибольшее количество делителей

1

Ответы и объяснения

  • hack1
  • середнячок
2013-11-10T13:48:21+04:00

А на каком языке сделать? 

program test; 

var 

    n, m: integer; 
    max: integer; 
    count: integer; 
    number: integer; 
    i: integer; 

function GetDividersCount(number: integer): integer; 
var 

    limit: integer; 
    count: integer; 
    i: integer; 

begin 

    limit := number div 2; 
    count := 0; 

    for i := 1 to limit do 

        if number mod i = 0 then 

            count := count + 1; 

    result := count; 

end; 

begin 

    write('Enter range: '); 
    read(n, m); 

    max := 0; 

    for i := n to m do 
    begin 

        count := GetDividersCount(i); 

        if max < count then 
        begin 

            max := count; 
            number := i; 

        end; 

    end; 

    writeln('Result: ', number); 

end.