1

只是想问一下是否有办法将两个项目放在一起,例如,如果我从一个包含 20 个项目的大列表中生成 4 个随机购物清单,这些项目都存储在我的 global(array) 中,如果我可以将它除以 4 和随机将我知道的 4 个较小的列表放在一起在 c# 中我可能会使用“随机”库在 Mumps objectscript 中是否有类似的东西?

4

2 回答 2

1

$RANDOM(n) (或 $R) 有帮助吗?它生成一个介于 0 和 n 之间的随机数。

于 2013-09-08T17:45:35.433 回答
1

有十几种方法可以做到这一点,这里有一个例子:

 RLIST
  N ITMS,I,FLG,R,ND,RES
  F I=1:1:20 S ITMS(I)="Item "_$E(I+100,2,3)  ; generate a list of items
  S ND="RES" K @ND
  ;
  F I=1:1:20 D  ; iterate through the list of items
  .S FLG="" F  D  Q:FLG  ; randomly select a target list
  ..S R=$R(5)+1  ; this will yield (0-4)+1 -> 1-5
  ..I $L($G(@ND@(R)),",")<4 D  S FLG=1  ; has the target list less then 5 items?
  ...S @ND@(R)=$G(@ND@(R))_$S($G(@ND@(R))="":"",1:",")_ITMS(I)  ; if so, add one
  ;
  F I=1:1:5 U 0 W "List "_I_": "_@ND@(I),!  ; print the target lists
  Q

使用语法高亮的示例

于 2013-09-09T22:08:39.057 回答