作业帮 > 综合 > 作业

pascal 孪生素数

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/02 04:23:19
pascal 孪生素数
桐桐把大小之差不超过2的两个素数称为一对孪生素数,如2和3,3和5,17和19等,请你帮助桐桐统计一下,在不大于自数n的素数中,孪生素数的对数.
program Prime;
var
i,j,k,n:Longint;
l :array[1..60000] of Boolean;
begin
k := 0;
FillChar(l,Sizeof(l),True);
ReadLn(n);
for i:= 2 to Trunc(Sqrt(n)) do
begin
if l[i] then
begin
for j := 2 to n div i do
begin
l[i*j] := False;
end;
end;
end;
for i := 2 to n do
begin
if l[i] and l[i+1] then
begin
WriteLn(i:8,(i+1):8);
k := k+1;
end
else if l[i] and l[i+2] then
begin
WriteLn(i:8,(i+2):8);
k := k+1;
end;
end;
WriteLn('Total:',k);
end.