【问题标题】:Simulating the randIntNoRep( command on the TI 83在 TI 83 上模拟 randIntNoRep( 命令
【发布时间】:2012-06-19 12:38:04
【问题描述】:

randIntNoRep( 命令已针对 OS 2.53MP 及更高版本上的 TI-84+/SE 计算器发布。

当您需要以随机顺序创建不重复整数的数字列表时使用该命令。它对于改组任何数字的序列非常有用。如何在早期版本(操作系统或设备)上实现此功能?

【问题讨论】:

    标签: random ti-basic


    【解决方案1】:

    这可以通过创建一个随机数列表来实现,并使用它对您想要随机化的数字的第二个列表进行排序。

    例如,使用randIntNoRep( 可以轻松地随机化一副​​ 52 张牌并将其保存为列表:

    :randIntNoRep(0,51→L₁
    

    这可以使用以下代码进行模拟:

    :rand(52→L₂
    :seq(X,X,0,51→L₁
    :SortA(L₂,L₁
    

    L₂ 设置为包含一组 52 个随机值。 L₁ 设置为包含将随机化的数字。通过对列表进行升序排序,可以实现与使用randIntNoRep(相同的方法。

    【讨论】:

    • TI-nspire也缺少randIntNoRep函数,可以通过上面的函数进行复现,或者用`randSamp(seq(x,x,1,52),52)',这只是上述的简化版本。
    【解决方案2】:

    你可以通过交换元素来随机化一个列表,就像这样。

    :For(F,1,dim(L1))
    :    iPart(dim(L1)rand+1)->R
    :    L1(R)->T
    :    L1(F)->L1(R)
    :    T->L1(F)
    :End
    

    这个随机化 L1,假设 L1 有你想要的所有元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-16
      • 1970-01-01
      相关资源
      最近更新 更多