Определить все простые двузначные числа. есть предположение, что решается именно так, составить блок-схему. program example14; var i: integer; function prost(i: integer): boolean; var j: integer; begin prost : = true; i: =abs(i); for j : = 2 to (i div 2) do if (i mod j = 0) then prost : = false; end; begin for i : = 10 to 99 do if prost(i) = true then write(i: 5); readln(i); end.

Fanny321 Fanny321    3   18.05.2019 09:00    0

Ответы
bullet699 bullet699  11.06.2020 15:17

var prost: array [1..100] of integer;
  i, max, n, j: integer;
  is_prost:bool;
Begin
  max := 99;
  prost[1] := 2;
  n := 1;
  for i := 2 to max do begin
    is_prost := true;
    for j := 1 to n do begin
      is_prost := is_prost and not (i mod prost[j] = 0);
    end;
    if is_prost then begin
      n := n + 1;
      prost[n] := i;
    end;
  end;

  for i := 1 to n do
    if prost[i] > 9 then write(prost[i], ' ');
End.

ПОКАЗАТЬ ОТВЕТЫ
LeviAckerman13 LeviAckerman13  11.06.2020 15:17

const
  n = 99;
var
  P:array[2..n] of boolean;
  i, pr:integer;
  flag:boolean;
begin
  for i := 2 to n do
    P[i] := true;
  pr := 2;
  flag := true;
  while flag do
  begin
    i := 2 * pr;
    while i <= n do
    begin
      P[i] := false;
      i := i + pr;
    end;
    flag := false;
    for i := pr + 1 to n do
      if P[i] then
      begin
        pr := i;
        flag := true;
        break;
      end;
  end;
 
  for i := 10 to n do
    if P[i] then
      write(i, ' ');
  readln;
end.

Моя быстрее работает :Р
 

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