主题:随机产生50个10-90之间的整数,选出其中的素数,并按由小到大的顺序输出
haizzz
[专家分:140] 发布于 2005-10-15 15:20:00
1 随机产生50个10-90之间的整数,选出其中的素数,并按由小到大的顺序输出。
2 找出10-10000之间的回文数。
要求用子程序写
先谢了
[em11]
回复列表 (共2个回复)
沙发
清风逸苑 [专家分:0] 发布于 2005-10-15 19:46:00
第一题:
declare sub getrnd(a() as integer,b() as integer)
declare sub mysort(x() as integer,n as integer)
declare sub outarr(x() as integer,n as integer)
call getrnd(a())
call mysort(a(),n)
print call outarr(a(),n)
end
sub getrnd(a() as integer,b() as integer)
dim y as integer
for i=1 to 50
randomize
a(i)=int(81*rnd)+10
for j=2 to sqr(a(i)
if a(i) mod j<>0 then
y=y+1: b(y)=a(i)
next j
next i
end sub
sub mysort(x() as integer,n as integer)
dim j as integer,i as integer
for j=1 to n-1
for i=1 to n-j
if x(i)>x(i+1) then swap x(i),x(i+1)
next i
next j
end sub
sub outarr(x() as integer,n as integer)
for i=1 to y
print x(i);
if (i mod 10=0) then print
next i
print
end sub
板凳
carefreeNumOne [专家分:40] 发布于 2005-10-17 14:35:00
CLS
FOR i = 10 TO 10000
i$ = LTRIM$(STR$(i))
l% = LEN(i$)
FOR a = 1 TO l% / 2
p$ = MID$(i$, a, 1)
q$ = MID$(i$, l% - a + 1, 1)
IF p$ = q$ THEN k = k + 1
NEXT a
IF k = l% / 2 THEN PRINT i;
k = 0
NEXT i
二题
我来回复