Procedure P(Const A:integer; Var p:integer); Var K:real; d:integer; Begin if A > 1 then if (A = 2)or(A = 3) then p:=p+1 else if A mod 2 <> 0 then Begin K:=Sqrt(A); d:=3; While (d<K)and(A mod d <> 0) do d:=d+2; if A mod d <> 0 then Begin p:=p+1; Write('(простое)') End End; End; Const N = 20; Var A:array[1..N] of integer; i,k:integer; Begin Randomize; k:=0; Write('Исходный массив:'); For i:= 1 to N do Begin A[i]:=random(99)+1; Write(' ',A[i]); P(A[i],k); End; WriteLn; WriteLn('Кол-во простых чисел в массиве: ',k); End.
Var
K:real;
d:integer;
Begin
if A > 1 then
if (A = 2)or(A = 3) then p:=p+1
else
if A mod 2 <> 0 then
Begin
K:=Sqrt(A);
d:=3;
While (d<K)and(A mod d <> 0) do
d:=d+2;
if A mod d <> 0 then
Begin
p:=p+1;
Write('(простое)')
End
End;
End;
Const
N = 20;
Var
A:array[1..N] of integer;
i,k:integer;
Begin
Randomize;
k:=0;
Write('Исходный массив:');
For i:= 1 to N do
Begin
A[i]:=random(99)+1;
Write(' ',A[i]);
P(A[i],k);
End;
WriteLn;
WriteLn('Кол-во простых чисел в массиве: ',k);
End.