0

我正在用 QBasic 写一个猜谜游戏,它告诉你我不这样做,每次我运行代码时,rndnum 总是为 0。我应该改变什么?

4

2 回答 2

1

要获得不同的随机数,您必须先播种它。这是 QB 4.5 帮助文件中的示例:

RANDOMIZE TIMER  ' This is the best seed. The time is constantly changing
A =  INT(RND*100)+1 ' Generate a random number
Print A
于 2015-09-12T07:13:52.760 回答
0

如果您说每次程序运行时第一个返回的数字为零,那么您只需将 randomize 语句添加为一次性调用过程。如果您改为说,当您在循环中迭代相同的代码时,它每次都返回零,那么还有其他错误 - 无论出于何种原因,QBasic 很可能不会将 RND 识别为函数,因此假定它是一个变量,默认情况下将设置为零。正确的语法类似于:

Lowerbound = 1
Upperbound = 100
RANDOMIZE
FOR X = 1 TO 10
  PRINT INT((Upperbound - Lowerbound + 1) * RND + Lowerbound)
NEXT X
于 2015-02-28T22:47:14.693 回答