我在QBasic中写了一个猜谜游戏,这种情况告诉你我不是这个,每次我运行代码时rndnum总是0.我应该改变什么?
答案 0 :(得分: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
答案 1 :(得分:0)
如果您说每次运行程序时第一个返回的数字为零,那么您只需要将randomize语句添加为一次性调用过程。如果你反而说当你在循环中迭代相同的代码时它每次都返回零,那么就会出现其他错误 - 很可能是因为任何原因QBasic不会将RND识别为函数,因此假设它是一个变量,默认设置为零。正确的语法类似于:
Lowerbound = 1
Upperbound = 100
RANDOMIZE
FOR X = 1 TO 10
PRINT INT((Upperbound - Lowerbound + 1) * RND + Lowerbound)
NEXT X