Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Random 从字符串列表中返回随机字符串的公式?_Random_Formula_Openoffice Calc - Fatal编程技术网

Random 从字符串列表中返回随机字符串的公式?

Random 从字符串列表中返回随机字符串的公式?,random,formula,openoffice-calc,Random,Formula,Openoffice Calc,我想在OpenOffice Calc中显示随机课程(MBA,MSc) =RANDBETWEEN('MBA', 'MSc') 及 但是它们不能按预期工作。在OpenOffice Calc中,返回一个介于0和1之间的值-因此您必须组合不同的公式以从两个文本值中随机选择。需要采取以下步骤: 将rand的结果四舍五入为整数 基于该整数,从列表中选择 尝试以下公式: =CHOOSE(ROUND(RAND()+1);"MBA";"MSc") 或者分成不同的行: =CHOOSE( ROUN

我想在OpenOffice Calc中显示随机课程(
MBA
MSc

=RANDBETWEEN('MBA', 'MSc')  


但是它们不能按预期工作。

在OpenOffice Calc中,返回一个介于0和1之间的值-因此您必须组合不同的公式以从两个文本值中随机选择。需要采取以下步骤:

  • 将rand的结果四舍五入为整数
  • 基于该整数,从列表中选择
尝试以下公式:

=CHOOSE(ROUND(RAND()+1);"MBA";"MSc")
或者分成不同的行:

=CHOOSE(
    ROUND(
        RAND()+1
    );
    "MBA";
    "MSc"
)
根据您的本地化,您必须替换参数分隔符
编写

说明:

  • 从值列表中选择;选择基于第一个参数(此处:舍入的随机值)
  • 将小数舍入为整数
  • +1
    确保生成的随机值为
    1
    2

我不是一个对电子表格有深刻理解的用户,但我认为这是一个有趣的问题。我想玩一个有两个以上选择的例子,并尝试了一个有六个选择的练习

兰德函数的OpenOffice wiki说

RAND()*(b-a) + a

returns a random real number between a and b. 
由于CHOOSE函数需要整数1到6才能做出6个选择,所以RAND需要输出1到6的数字,我让a=1和b=6

这是经过测试的,

=CHOOSE(ROUND(5*RAND()+1);"Business";"Science";"Art";"History";"Math";"Law")
这输出了六门课程的随机选择,但我发现这六门课程的选择机会并不均等。商业和法律有十分之一的机会被选中,而科学、艺术、历史和数学有十分之二的机会被选中

=CHOOSE(ROUNDUP(6*RAND()+0.00001);"Business";"Science";"Art";"History";"Math";"Law")

似乎给了所有六门课程几乎平等的选择机会

这是一个有用的问题,但它更适合我。请不要删除这个问题,我希望管理员很快会把它移到那里。
=CHOOSE(ROUNDUP(6*RAND()+0.00001);"Business";"Science";"Art";"History";"Math";"Law")