
2个回答
展开全部
program prime1600(input,output);
const maxlen=40;
var primes :array[1..maxlen] of integer;
i,j,n,c:integer;
begin
n:=2;
write(2,',',3);
primes[1]:=2;primes[2]:=3; {初始化素数表}
i:=5;
while i<1000 do begin {5~1000之间}
if n <maxlen then c:=n else c:=maxlen; {素数表最大40个 ,所有1600以内的数 ,除法不超过40次}
for j:=2 to c do if i mod primes[j] =0 then break;{筛法求素数}
if j =c then begin {不是素数,j 一定小于c}
write(',',i) ;
if(n<maxlen )then begin
inc (n);
primes[n]:=i; {动态生成素数表}
end;
end;
inc(i,2); {跳过偶数}
end;
readln;
end.
const maxlen=40;
var primes :array[1..maxlen] of integer;
i,j,n,c:integer;
begin
n:=2;
write(2,',',3);
primes[1]:=2;primes[2]:=3; {初始化素数表}
i:=5;
while i<1000 do begin {5~1000之间}
if n <maxlen then c:=n else c:=maxlen; {素数表最大40个 ,所有1600以内的数 ,除法不超过40次}
for j:=2 to c do if i mod primes[j] =0 then break;{筛法求素数}
if j =c then begin {不是素数,j 一定小于c}
write(',',i) ;
if(n<maxlen )then begin
inc (n);
primes[n]:=i; {动态生成素数表}
end;
end;
inc(i,2); {跳过偶数}
end;
readln;
end.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询