Giải giúp e bài này với ạ, e cảm ơn? Cho dãy a gồm N phân tử nguyên nhập từ bàn phím.Viết chương trình a) kiểm tra trong dãy a có bao nhiêu phân tử là số nguyên dương b) kiểm tra trong dãy a có bao nhiêu phân tử là số nguyên tố
2 câu trả lời
uses crt;
var n,i,d1,d2:byte;
a:array[1..200] of integer;
function snt(x:integer):boolean;
var tam:integer;
begin
if x<2 then snt:=false
else
begin
snt:=true;
for tam:=2 to round(sqrt(x)) do
if x mod tam =0 then exit(false);
end;
end;
BEGIN
clrscr;
write('Nhap n:'); readln(n);
d1:=0; d2:=0;
for i:=1 to n do
begin
write('Nhap a[',i,']:');
readln(a[i]);
if a[i]>0 then inc(d1);
if snt(a[i]) then inc(d2);
end;
writeln('Co ',d1,' so nguyen duong trong day.');
write('Co ',d2,' so nguyen to trong day.');
readln
END.
Chúc bạn học tốt!
program baigiai;
uses crt;
var A:array[1..100] of integer;
n,i,dd,dnt:byte;
function ktnt(k:integer):boolean;
var l:integer;
begin
ktnt:=false;
if k<2 then exit;
for l:=2 to trunc(sqrt(k)) do
if k mod l=0 then exit;
ktnt:=true;
end;
BEGIN
clrscr;
write('Nhap so luong phan tu N: '); readln(n);
dd:=0; dnt:=0;
for i:=1 to n do
begin
write('A[',i,'] = '); readln(A[i]);
if A[i]>0 then dd:=dd+1;
if ktnt(A[i]) then dnt:=dnt+1;
end;
writeln('Trong day A co ',dd,' phan tu la so duong');
writeln('Trong day A co ',dnt,' phan tu la so nguyen to');
readln
end.