Bài a:
uses crt;
var a:array[1..1000000] of longint;
n,i,j:longint;
function ktnt(x:longint):boolean;
var i:longint;
begin
ktnt:=false;
for i:=2 to x div 2 do
if x mod i=0 then exit;
if x<2 then exit;
ktnt:=true;
end;
begin
clrscr;
write('Nhap do dai cua mang: ');readln(n);
for i:=1 to n do
begin
write('a[',i,']=');readln(a[i]);
end;
write('Cac so nguyen to co trong mang: ');
for i:=1 to n do
if ktnt(a[i])=true then write(a[i],' ');
readln;
end.
Bài b:
uses crt;
var a:array[1..1000000] of longint;
n,i,j:longint;
function ktcp(x:longint):boolean;
begin
if sqr(trunc(sqrt(x)))=x then exit(true)
else exit(false);
end;
begin
clrscr;
write('Nhap do dai cua mang: ');readln(n);
for i:=1 to n do
begin
write('a[',i,']=');readln(a[i]);
end;
write('Cac so chinh phuong co trong mang: ');
for i:=1 to n do
if ktcp(a[i])=true then write(a[i],' ');
readln;
end.