为什么INT(RND*100)+1的和总是等于0_Q基本

  • 本文关键字:基本 INT RND qbasic
  • 更新时间 :
  • 英文 :


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

要获得不同的随机数,必须首先对其进行种子设定。以下是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

如果你说每次运行程序时第一个返回的数字都是零,那么你只需要添加randomize语句作为一个一次性调用的过程。如果你说当你在循环中迭代相同的代码时,它每次都返回零,那么就有其他问题了——很可能是因为任何原因,QBasic都不将RND识别为函数,因此假设它是一个变量,默认情况下会设置为零。正确的语法应该是:

Lowerbound = 1
Upperbound = 100
RANDOMIZE
FOR X = 1 TO 10
  PRINT INT((Upperbound - Lowerbound + 1) * RND + Lowerbound)
NEXT X

相关内容

  • 没有找到相关文章

最新更新