giúp mk vs: viết chương trình nhập vào 1 mảng và in ra các số siêu nguyên tố đứng trc còn các số còn lại đứng sau
1 câu trả lời
program bai_giai;
uses crt;
var a,ant,astn:array[1..1000]of longint;i,j,k,e,n,tam:longint;
function NT(b:longint):boolean;
var dem,j:longint;
begin
dem:=0;
for j:=1 to b do if(b mod j=0)then inc(dem);
NT:=dem=2;
end;
begin
clrscr;
write('nhap n:');readln(n);
k:=1;
e:=1;
for i:=1 to n do
begin
write('a[',i,']=');readln(a[i]);;
if(NT(a[i]))then
begin
ant[k]:=a[i];
inc(k);
end else
begin
astn[e]:=a[i];
inc(e);
end;
end;
for i:=1 to k-2 do
for j:=i+1 to k-1 do
if(ant[i]>ant[j])Then
begin
tam:=ant[i];
ant[i]:=ant[j];
ant[j]:=tam;
end;
for i:=1 to e-2 do
for j:=i+1 to e-1 do
if(astn[i]>astn[j])Then
begin
tam:=astn[i];
astn[i]:=astn[j];
astn[j]:=tam;
end;
for i:=1 to k-1 do write(ant[i],' ');
for i:=1 to e-1 do write(astn[i],' ');
readln
end.