• Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [244143; 367821], числа, имеющие ровно 5 различных делителей. Выведите эти делители для каждого найденного числа в порядке возрастания.

Ответы 1

  • Ответ:

    Объяснение:

    const

     a = 244143;// с какого числа

     b = 367821;// по какое число

     const_count_div = 5;// количество делителей

    label

     1;

    var

     i, k, t:longint;

     ar_div:array[1..500] of longint;

     count_div:integer;

    begin

     for i:=a to b do begin // перебираем все числа из заданного промежутка

       count_div:=0;

       for k:= 1 to i do //  для каждого числа перебираем делители

         if (i mod k) = 0 then begin

           count_div:=count_div + 1;

           if (count_div > const_count_div) then goto 1; // если количество делителей больше заданного количества, то на следующий шаг

           ar_div[count_div]:=k;// заносим в массив делителей найденный делитель

         end;

       //writeln;

       if (count_div = const_count_div) then begin

         //writeln(i, ' ', count_div);

         write(i, ': ');

         for t:=1 to count_div do

           write(ar_div[t], ' ');

         writeln;

       end;

     1:

     end;

     writeln('End');

     readln;

    end.

    • Автор:

      vegas84
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years