Viết chương trình pascal nhập 1 số n cụ thể từ bàn phím và in ra những số nguyên tố từ 1 đến n (Gợi ý: nhập số n từ bàn phím và dùng hàm ngto(...) )
2 câu trả lời
var n:int64;
function ngto(h:int64):boolean;
var d,i:integer;
begin
d:=0;
for i:=1 to h do
begin
if h mod i=0 then inc(d);
end;
if d=2 then ngto:=true
else ngto:=false;
end;
var i:longint;
begin
read(n);
for i := 1 to n do
begin
if ngto(i) then write(i,' ');
end;
end.
P/s: Gửi bạn, thuật toán dùng kĩ năng function thôi nha chứ không có hàm ngto đâu :?
Chúc bạn học tốt @danhle
program in_nguyen_to;
uses crt;
var n,i:integer;
{---Ham-nguyen-to---}
function ktnt(k:integer):boolean;
var e:integer;
begin
ktnt:=false;
if k<2 then exit;
for e:=2 to trunc(sqrt(k)) do
if k mod e=0 then exit;
ktnt:=true;
end;
{---Chuong-trinh-chinh---}
BEGIN
clrscr;
write('Nhap n: '); readln(n);
for i:=1 to n do
if ktnt(i) then write(i,' ');
readln;
end.