我如何在Open Office中进行蒙特卡罗仿真?

我正在尝试为我正在处理的问题生成一些范围。 这些游侠将基于一堆数字的比例的总和。 例如,常数是5 6和7。

我得到的范围将是5 / x + 6 / y + 7 / z = S

我希望x,y和z从我有的数字列表中出来 – 比如.5,.6,.7,.8,.9和1

所以,如果我运行100次迭代,我希望电子表格从数字列表中随机填充一个X值,另一个随机selectY,另一个用于z。

就像我说的那样,我希望这个总和S被计算100次,这样我就能得到S的一个范围值。

我一直在试图找出如何做到这一点,而不使用macros。

这是一个办法。 创build一个x,y和zinput值的表格。 在表格左边用每个input值的编号(1 … N)放置一列。 假设你有10个潜在的input值。 所以你的表在A1:D10中,列A中的1到10,B中的x值,C中的y值和D中的z值。

然后你可以通过写= VLOOKUP(10 * RAND()+ 1,$ A $ 1:$ D $ 10,2,TRUE)来selectx值的随机值。 这随机select一个介于0和10之间的数字,并查找与匹配数字的A列匹配的x值,向下舍入。 例如,随机数是4.3 – 那么它将select第四个值。 将VLOOKUP列中的第三个参数replace为y值为3,z值为4。

如果在A:D列中没有任何其他数据,则可以用= VLOOKUP(count($ A:$ A)* RAND()+ 1,$ A:$ D,2,TRUE)概括。