Bài 1: Cho các số tự nhiên n. Tồn tại hay không các số “sinh đôi”. Trong các số n, n+1, …,2n (giải thích:các số “sinh đôi” là các số nguyên tố mà khoảng cách giữa chúng bằng 2
Bài giải:
uses crt;
var n,dem,i:integer;
{-----------------}
function ngto(n:integer):boolean;
var i:integer;
begin
i:=2;
while (n mod i<>0) and (n>i) do inc(i);
if n=i then ngto:=true
else ngto:=false;
end;
{-----------------}
begin
clrscr;
write('Nhap n:');readln(n);
dem:=0;
for i:=n to 2*n-2 do
if (ngto(i)) and (ngto(i+2)) then inc(dem);
if dem<>0 then
begin
writeln('Co ton tai cac cap so sinh doi trong khoang ',n,'...',2*n);
writeln('Cac cap so do la:');
for i:=n to 2*n-2 do
if (ngto(i)) and (ngto(i+2)) then writeln(i,' va ',i+2);
end
else writeln('Khong ton tai cac cap so sinh doi trong khoang ',n,'...',2*n);
readln;
end.
Bài 2: Cho số tự nhiên n nhập từ bàn phím. Lập chương trình kiểm tra xem n có phải là số hoàn chỉnh hay không? (số hoàn chỉnh là số bằng tổng tất cả các ước số nguyên dương khác 1 của mình)
Bài giải:
uses crt;
var n,tong,i:word;
begin
clrscr;
write('nhap n:');readln(n);
tong:=0;
for i:=2 to n-1 do
if (n mod i=0) then inc(tong,i);
if (n=tong) and (n>=4) then writeln(n,' la so hoan chinh')
else writeln(n,' khong phai la so hoan chinh');
readln;
end.