主题:求助!请问错在哪里?
文刀一猛
[专家分:0] 发布于 2005-04-09 22:26:00
我编的一个猜数字小游戏,请问为什么答案总是70?
10 CLS:PRINT "=======Guess Number======="
20 CLS:PRINT "Please Input Number"
30 B=RND(1)
40 LET C=INT(100*B)
50 INPUT A
60 IF A>B THEN PRINT "Big!":GOTO 90 ELSE 70
70 IF A<B THEN PRINT "Small!":GOTO 90 ELSE 80
80 PRINT "You Are Right!":END
90 C=0
100 LET C=C+1
110 IF C=90000 THEN GOTO 50 ELSE 100
[em18][em18][em18][em18][em18][em18][em18][em18]
回复列表 (共7个回复)
沙发
54BB [专家分:380] 发布于 2005-04-10 00:17:00
在QB中RND函数并不是随机的,你可以在前面先输个randomize,以后每次输一个特殊值,就可以有不同的随机数了
板凳
litboat [专家分:140] 发布于 2005-04-10 01:49:00
5 randomize timer
另外,30行中的rnd建议不要(1)
3 楼
飞鸟12 [专家分:2830] 发布于 2005-04-10 13:25:00
CLS : RANDOMIZE TIMER
PRINT STRING$(14, "*") + "Guess Number" + STRING$(20, "*")
PRINT "*"; SPC(44); "*"
PRINT "*Please Input A Number" + STRING$(3, "-") + "0<A<100 || A=-1: END*"
PRINT "*"; SPC(44); "*"
PRINT STRING$(46, "*")
PRINT
b = INT(100 * RND)
DO
INPUT "A=", A: IF A = -1 THEN EXIT DO
IF A > b THEN
PRINT "Big!"
ELSEIF A < b THEN
PRINT "Small!"
ELSE
PRINT "You Are Right!"
EXIT DO
END IF
LOOP
END
显示效果如下:
***************Guess Number*********************
* *
* Please Input A Number---0<A<100 || A=-1: END *
* *
************************************************
A=50
Small!
A=90
Big!
A=75
Small!
A=-1
Good Luck next time!
4 楼
文刀一猛 [专家分:0] 发布于 2005-04-19 22:17:00
谢啦!
5 楼
tangran [专家分:20] 发布于 2005-04-22 14:52:00
阿达,你没加RANDOMIZE TIMER.
6 楼
vb2008 [专家分:100] 发布于 2005-04-30 22:12:00
10 RANDOMIZE TIMER
20 CLS
30 a = RND(1)
40 b = INT(100 * a)
50 DO
60 INPUT c
70 IF c = b THEN
80 PRINT "you are right!!!"
90 END
100 END IF
110 IF c > b THEN PRINT "big!!!"
120 IF c < b THEN PRINT "small!!!"
130 LOOP
140 END
我已经很克制了还有14行
7 楼
def [专家分:3380] 发布于 2005-05-01 20:06:00
随机换数字
10 RANDOMIZE TIMER
20 CLS
30 DO
40 a = RND(1)
50 b = INT(100 * a)
60 INPUT c
70 IF c = b THEN
80 PRINT "You are right!!!"
90 END
100 END IF
110 IF c > b THEN PRINT "Big!!!"
120 IF c < b THEN PRINT "Small!!!"
130 LOOP
140 END
我来回复