主题:找素数!
zenia
[专家分:20] 发布于 2005-03-11 21:57:00
找出1-100之间所有素数。
这道题怎么做?
回复列表 (共9个回复)
沙发
feimao2002 [专家分:90] 发布于 2005-03-12 13:35:00
var
i,j,k:integer;
begin
for i:=2 to 100 do
begin;
k:=0;
for j:=2 to round(sqrt(i-1)) do
begin
if i mod j=0 then k:=k+1;
end;
if k=0 then write(i:4);
end;
end.
板凳
hz10213534 [专家分:10] 发布于 2005-03-13 16:16:00
快速搜索[em2]
3 楼
zenia [专家分:20] 发布于 2005-03-17 21:45:00
谢谢
4 楼
zenia [专家分:20] 发布于 2005-03-17 22:01:00
var
i,j,k:integer;
begin
for i:=2 to 100 do
begin;
k:=0;
for j:=2 to round(sqrt(i-1)) do
begin
if i mod j=0 then k:=k+1;
end;
if k:=0 then write(i:4);
end;
end.
这样才对k后面要加赋值号~
但还是非常感谢的~
5 楼
伙儿 [专家分:30] 发布于 2005-03-19 10:40:00
PROGRAM prime(input,output);
{输出1-100中的素数}
VAR
i,j,count:integer;
flag:boolean;
BEGIN
count:=0;
FOR i:=2 TO 100 DO
BEGIN
{用2到sqrt(i)去除i,看能否除尽}
flag:=true;
FOR j:=2 TO round (sqrt(i))DO
IF i MOD j=0
THEN flag:=false;
{若都除不尽,输出素数}
IF flag
THEN BEGIN
write(i);
count:=count+1;
IF count MOD 5=0
THEN writeln
END
END
END.
6 楼
泡泡糖 [专家分:230] 发布于 2005-05-03 19:35:00
var i,s,n,j,k:integer;
begin
for i:=2 to 100 do
begin
j:=0;
for k:=1 to i do if i mod k=0 then j:=j+1;
if j=2 then s:=s+i;
end;
writeln('s= ',s);
end.
7 楼
sd5774188 [专家分:260] 发布于 2005-05-04 15:51:00
program yb(input,output);
var a,b:integer;
c:boolean;
begin
writeln('2');
for a:=3 to 200 do
begin
c:=true;
for b:=2 to trunc(0.5*a) do
if (a mod b=0) then
c:=false;
if c=true then
writeln(a);
end;
end.
8 楼
6yangweihua [专家分:180] 发布于 2005-06-04 15:29:00
var i,j:integer;
p:boolean;
begin
for i:=2 to 100 do begin
p:=true;
for j:=2 to trunc(sqrt(i))do begin
if i mod j=0 then p:=false;
end;
if p then write(i:5);
end;
end.
这行吗???[em9]
9 楼
hyhuangyu [专家分:0] 发布于 2005-06-07 20:56:00
var
i,j,k:integer;
begin
for i:=2 to 100 do
begin;
k:=0;
for j:=2 to round(sqrt(i-1)) do
begin
if i mod j=0 then k:=k+1;
end;
if k=0 then write(i:4);
end;
end.
我来回复