Регистрация
Войти
Стать экспертом Правила
Информатика

используя тип данных массив.напишите программу,которая реализует алгоритм Эратосфена для вычисления простых чисел,меньше заданного n(n <=200)

ОТВЕТЫ
//PascalABC.NET версия 3.2, сборка 1389
//Если программа не запускается, то обновите версию
const
    n = 200;

var
    primes: array of integer;

begin
    primes := ArrGen(n, i -> i);
    
    for var i := 2 to round(sqrt(n)) do
    begin
        if not (primes.Contains(i)) then
            continue;
        var e := SeqWhile(i*i, x -> x + i, x -> x <= n);
        primes := primes.Except(e).ToArray;
    end;
    
    writeln('Простые числа < ', n, ':');
    writeln(primes);
    writeln;
    writeln('Время вычисления: ', Milliseconds / 1000);
end.
696
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам