Random picaxe 28x1随机数发生器
我有一些使用picaxes网站上的随机数函数的简单代码(稍加修改) 出于某种原因,在picaxe编辑器第5版上,它工作得非常完美,但在picaxe编辑器第6版上,它所做的只是给出2,不是很随机,我不知道为什么 非常感谢您的帮助 感谢检查显示代码中可能存在的一些问题:Random picaxe 28x1随机数发生器,random,picaxe,Random,Picaxe,我有一些使用picaxes网站上的随机数函数的简单代码(稍加修改) 出于某种原因,在picaxe编辑器第5版上,它工作得非常完美,但在picaxe编辑器第6版上,它所做的只是给出2,不是很随机,我不知道为什么 非常感谢您的帮助 感谢检查显示代码中可能存在的一些问题: 必须先用settimer命令初始化timer系统变量,然后才能使用它 根据与settimer一起使用的预加载值,timer的值可能在一次循环迭代和下一次循环迭代之间的短时间内没有发生变化,这将为您提供与random相同的结果 ra
- 必须先用
命令初始化settimer
系统变量,然后才能使用它timer
- 根据与
一起使用的预加载值,settimer
的值可能在一次循环迭代和下一次循环迭代之间的短时间内没有发生变化,这将为您提供与timer
相同的结果random
应与字变量(w0、w1等)而不是字节变量一起使用random
random
建议您应该做的是,尽管我同意不太清楚您是否是随机数生成新手,但应该使用timer
对第一次调用它的时间进行种子设定,然后每次使用它自己以前的值进行种子设定:
symbol counter = b5
let w3 = timer ; w3 is the word variable consisting of b6 and b7
for counter = 0 to 10
random w3
; ...do something with the value of w3 (but don't change w3 itself)...
next counter
然而说了这些之后,肯定有可能PICAXE编程编辑器的一个或其他版本中的模拟器在所有情况下都不能正确模拟
定时器的行为。如果您无法在真正的PICAXE上运行代码,请将此问题带到Revolution Education支持人员以及其他知识渊博的用户可以看到的地方。您是在simulation中运行此代码还是在真正的PICAXE上运行此代码?simulation和PICAXE for editor 6以及simulation for editor 5。此外,我添加了一个等待循环,它要求你按下一个按钮来启动程序,所以运行时间应该是随机的
symbol counter = b5
let w3 = timer ; w3 is the word variable consisting of b6 and b7
for counter = 0 to 10
random w3
; ...do something with the value of w3 (but don't change w3 itself)...
next counter