我正在寻找一个公式:
Xn + 1 =(a Xn + c)(mod m)
其中“n”是可以从1到1700的值的数量。“X”是 数字。 (n + 1和n都是子脚本)
我试图找到伪随机数列表的未来可能结果(每个数字最多有6位数,并且可以有000001到999999之间的值)。
我知道Xn + 1和Xn的值;对于“m”我使用值“1000000”或“999999”,因此结果总是6位数或更少。
我需要找出“a”的价值。
供参考: Xn = 663354且Xn + 1 = 142516或211941或453794或512535 或704928(不知道这些数字的顺序,但可以尝试一个 一个人,如果我只是知道如何获得“a”的值 上面的等式)
如果有人能提出别的建议,我需要解决这个等式或其他问题。
我不擅长编程;我目前正在使用MS Excel
来解决此问题。
但可以理解VB
中的一些代码。
在期待中感谢你。
答案 0 :(得分:0)
如果我理解得很好,你想确定你的经常性关系中的参数a和c。但是你只有一个等式的解决方案。您的系统未确定,您需要3个值Xn + 2,Xn + 1和Xn。 (http://en.wikipedia.org/wiki/Underdetermined_system)
如果你知道c,那么这很明显:你需要求解线性方程式。