主题:[投票]50分悬赏
905482852
[专家分:380] 发布于 2009-07-11 20:29:00
【问题描述】输入M和N的值,输出M到N之间所有的绝对素数。所谓绝对素数是指一个素数,当它的倒数仍为素数,这样的素数称为绝对素数。如157本身是素数,它的倒数751也是素数,所以157就是绝对素数。
【输入文件】
文件名:JUESU.IN
文件中有两个数M和N,10≤M<N≤32767。
【输出文件】
文件名:JUESU.OUT
文件中全部为M到N之间的绝对素数。
【输入样例】
90 120
【输出样例】
97 101 107 113
[em4][em5][em6][em7][em8][em9][em10][em1][em2][em3][em4][em9][em10][em11][em12][em13][em14][em15][em16][em17][em18][em19][em20][em16][em17][em19][em20][em13][em10][em9]
回复列表 (共19个回复)
沙发
phile [专家分:2310] 发布于 2009-07-13 18:22:00
简单要命
CLS
INPUT N,M
FOR I=N TO M
P=I
F=0
GOSUB 100
IF F=0 THEN
S$="'
DO
K=P MOD 10
S$=S$+LTRIM$(STR$(K))
P=P\10
LOOP UNTIL P=0
P=VAL(S$)
F=0
GOSUB 100
IF F=0 AND I>10 THEN PRINT I;
END IF
NEXT I
END
100
FOR J=2 TO SQR(P)
IF P MOD J=0 THEN F=1:RETURN
NEXT J
RETURN
板凳
905482852 [专家分:380] 发布于 2009-07-13 18:44:00
我知道咋做,我是要不是用字符串来编得程序!!!!Are you Ok??
3 楼
phile [专家分:2310] 发布于 2009-07-17 11:35:00
不早讲!!!
4 楼
phile [专家分:2310] 发布于 2009-07-17 11:38:00
不过很简单
只要在反序是去掉字符串改为
DO
K=P MOD 10
S=S*10+K
P=P\10
LOOP UNTIL P=0
P=S
就OK了!
5 楼
gewenbo [专家分:450] 发布于 2009-08-03 16:44:00
太简单了,用字符串做法(我个人喜欢用字符串,并不是只能用字符串做):
INPUT "M, N = ", m, n
FOR i = m TO n
flag1 = 0: flag2 = 0: a$ = LTRIM$(RTRIM$(STR$(i))): b$ = ""
FOR j = LEN(a$) TO 1 STEP -1
b$ = b$ + MID$(a$, j, 1)
NEXT j
FOR j = 2 TO INT(SQR(i))
IF i MOD j = 0 THEN flag1 = 1: EXIT FOR
NEXT j
FOR j = 2 TO INT(SQR(VAL(b$)))
IF VAL(b$) MOD j = 0 THEN flag2 = 1: EXIT FOR
NEXT j
IF flag1 = 0 AND flag2 = 0 THEN PRINT i,
NEXT i: PRINT
6 楼
梦幻小樱 [专家分:140] 发布于 2009-08-06 12:45:00
CLS
INPUT N,M
FOR I=N TO M
P=I
F=0
GOSUB 100
IF F=0 THEN
S$="'
DO
K=P MOD 10
S$=S$+LTRIM$(STR$(K))
P=P\10
LOOP UNTIL P=0
P=VAL(S$)
F=0
GOSUB 100
IF F=0 AND I>10 THEN PRINT I;
END IF
NEXT I
END
100
FOR J=2 TO SQR(P)
IF P MOD J=0 THEN F=1:RETURN
NEXT J
RETURN
7 楼
phile [专家分:2310] 发布于 2009-08-06 18:01:00
楼上!!!!
你为何抄我的!!!!
严禁抄袭!!!!!
8 楼
gewenbo [专家分:450] 发布于 2009-08-08 19:03:00
“梦幻小樱”简直就是抄王!!!!!!
[url=http://bbs.pfan.cn/post-305793.html]http://bbs.pfan.cn/post-305793.html[/url]
在这里他也抄我的!!!!1
9 楼
phile [专家分:2310] 发布于 2009-08-09 14:11:00
抄袭有啥好的?!
10 楼
天天和和 [专家分:1420] 发布于 2009-08-14 22:38:00
CLS
INPUT M, N
DIM Z(5)
FOR A = M TO N: I = A
FOR J = 2 TO SQR(I)
IF I MOD J = 0 THEN 10
NEXT J: K = 0
WHILE I <> 0
K = K + 1
Z(K) = I MOD 10
I = I \ 10
WEND
FOR L = 1 TO K: I = I * 10 + Z(L): NEXT L
FOR J = 2 TO SQR(I)
IF I MOD J = 0 THEN 10
NEXT J
PRINT A;
10 NEXT A
END
我来回复