Помогите сделать решето от 1 до 100: 1) выписать все натуральные числа от 1 до 100; 2) вычеркнуть 1; 3) подчеркнуть наименьшее из неотмеченных чисел; 4) вычеркнуть все числа, кратные подчеркнутому на предыдушем шаге;5) если в списке имеются неотмеченные числа, то перейти к шагу 3, в противном случае все подчёркнутые числа - простые. Очень срочно!

Var
  i,j,n:integer;
  a:array[1..1000] of boolean;
begin
  Write(Введите верхнюю границу чисел (до 1000): );
  Read(n);
  for i:=1 to n do a[i]:=True;
  i:=2;
  while sqr(i)<=n do begin
    j:=sqr(i);
    if a[i] then
      while j<=n do begin a[j]:=False; j:=j+i end;
    Inc(i)
  end;
  for i:=1 to n do
    if a[i] then Write(i, )
end.

Тестовое решение:
Введите верхнюю границу чисел (до 1000): 100
1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

Оцени ответ
Подпишись на наш канал в телеграм. Там мы даём ещё больше полезной информации для школьников!

Загрузить картинку