Напечатайте в порядке возрастания первые 1000 чисел, которые не имеют простых делителей, кроме 2, 3, 5. (2, 3, 4, 5, 6, 8, 9, 10, 12, …).(программа в Паскаль. )Может кто знает как,

uroolga uroolga    1   11.01.2021 06:16    6

Ответы
Abbszbbs Abbszbbs  11.01.2021 06:20

Все числа это простые делители, 1000 чисел писать не надо

ПОКАЗАТЬ ОТВЕТЫ
dima012002 dima012002  11.01.2021 06:20

алгоритм далек от совершенства, медленный, но считает правильно. Паскаль

Объяснение:

var

 col: integer;

 i, k: longint;

 del: boolean;

function prost(a: longint): boolean;

var c: integer;

begin

 prost := a >= 2;

 for c := 2 to trunc(sqrt(a)) do if a mod c = 0 then prost := false;

end;

begin

 i := 2;

 col := 1;

 repeat

   del := (i mod 2 = 0) or (i mod 3 = 0) or (i mod 5 = 0);

   for k := 6 to i div 2 do if (prost(k) = true) and (i mod k = 0) then del := false;

   if del then

   begin

    Write(i, ', ');

    inc(col);

   end;

   inc(i);

 until col > 1000;

end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика