2012-06-16 4 views
4

randIntNoRep( The команды TI была выпущена для TI-84 +/SE калькулятор на OS 2.53MP и выше.симуляция (команда randIntNoRep на 83

Команда используется, когда вам нужно создать список номера в случайном порядке, в которых не повторяется целое число.Это очень полезно перетасовывать последовательность любых чисел.Как я могу реализовать эту функциональность в более ранней версии (OS или по устройству)?

ответ

3

Это может быть достигнуто путем создавая список случайных чисел и используя его для упорядочения второго списка чисел, которые вы хотите рандомизировать.

Для exa mple, рандомизации 52 колода карт и сохранить его в виде списка можно легко сделать с randIntNoRep(:

:randIntNoRep(0,51→L₁ 

Это может быть смоделировано с помощью следующего кода:

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

L₂ установлен содержать набор из 52 случайных значений. L₁ будет содержать номера, которые будут рандомизированы. Путем упорядочивания списков в порядке возрастания, тот же метод может быть достигнут с использованием randIntNoRep(.

+2

В TI-nspire также отсутствует функция «randIntNoRep», и она может быть воспроизведена вышеуказанной функцией или с помощью «randSamp (seq (x, x, 1,52), 52)», которая является просто упрощенной версии выше. –

0

Вы можете рандомизировать список, заменив его элементы, например.

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

Это случайное L1, предполагая, что L1 имеет все элементы, которые вы хотите.