回 帖 发 新 帖 刷新版面

主题:编程

随机产生50个10-90之间的整数,选出其中的素数(用筛选法或其他方法),并按由小到大的顺序输出(用插入法或比较法,选其中一个)

回复列表 (共7个回复)

沙发

随机产生50个10-90之间的整数,选出其中的素数(用筛选法或其他方法),并按由小到大的顺序输出(用插入法或比较法,选其中一个)

dim a(50),b(50)
for i=1 to 50
    a(i)=int(rnd*(81)+10)
    print a(i);
next i
print

for i=1 to 50 
    flag=1
    for j=2 to a(i)-1
        if a(i) mod j=0 then flag=0
    next j
        if flag=1 then 
            print a(i);       
            k=k+1
            b(k)=b(k)+1
        end if
next i
print

for i=1 to k-1
    for j=1 to k-i
        if a(j)>a(j+1) then  a(j),a(j+1)
    next j
next i

for i=1 to k
    print a(i);
next i
end

        

板凳

[size=2]不难啊!
CLS
DIM A(50),B(50)
T=0
FOR I = 1 TO 50 
  A(I)=INT(RND*81)+10
NEXT I 
FOR I = 1 TO 50
  F=0
  FOR J = 2 TO A(I)-1
    IF A(I) MOD J = 0 THEN F=1
  NEXT J 
  IF F=0 THEN T=T+1:B(T)=A(I)
NEXT I 
FOR I = 1 TO T-1
  FOR J = I TO T
    IF B(I)>B(J) THEN SWAT B(I),B(J)
  NEXT J 
NEXT I 
FOR I = 1 TO T
  PRINT B(I),
NEXT I 
END[/size][/size][/size][/size][/size]

3 楼

没有必要像2楼那样做吧?!

4 楼

CLS
'找出50个10-90之间的所有素数
FOR I=1 TO 50
X=INT(RND*81+10)
FOR J=2 TO SQR(X)
IF X MOD J=0 THEN 10
NEXT J:A=A+1:A(A)=X
10 NEXT I
'选择排序,从小到大输出
FOR I=1 TO A-1:FOR J=I+1 TO N
IF A(I)>A(J) THEN SWAP A(I),A(J)
NEXT J,I
'输出
FOR I=1 TO A:PRINT A(I);:NEXT I
END

5 楼

CLS
FOR I=1 TO 50
A=INT(RND*81)+10
FOR J=2 TO SQR(A)
IF A MOD J=0 THEN 1
NEXT J:S=S+1:A(S)=A
1 NEXT I
FOR I=1 TO S-1
FOR J=I+1 TO S
IF A(I)>A(J) THEN SWAP A(I),A(J)
NEXT J,I
FOR I=1 TO S:PRINT A(I);:NEXT I
END

6 楼

cls
for i=1 to 50
a=int(rnd*81+10)
for j=2 to sqr(a)
if a mod j=0 then 10
next j:k=k+1:a(k)=a
10 next i
for i=1 to k-1
for j=i+1 to k
if a(i)>a(j) then swap a(i),a(j)
next j:?a(i);
next i:?a(i)
end
不必判断1,因为产生的是10至90.

7 楼

CLS
DIM A(50),B(50)
T=0
FOR I = 1 TO 50 
  A(I)=INT(RND*81)+10
NEXT I 
FOR I = 1 TO 50
  F=0
  FOR J = 2 TO A(I)-1
    IF A(I) MOD J = 0 THEN F=1
  NEXT J 
  IF F=0 THEN T=T+1:B(T)=A(I)
NEXT I 
FOR I = 1 TO T-1
  FOR J = I TO T
    IF B(I)>B(J) THEN SWAT B(I),B(J)
  NEXT J 
NEXT I 
FOR I = 1 TO T
  PRINT B(I),
NEXT I 
END

我来回复

您尚未登录,请登录后再回复。点此登录或注册