Я создал новый стек с шестью кнопками (пять маленьких и один большой) на card1
. В каждой кнопке есть такой номер.Создание уникальных случайных чисел в Livecode
button1 - 1
button2 - 2
button3 - 3
button4 - 4
button5 - 5
При нажатии на большую кнопку, я хочу, чтобы обменять эти числа случайным образом похожее на это ...
button1 - 4
button2 - 5
button3 - 1
button4 - 2
button5 - 3
После повторного нажатия на кнопку ...
button1 - 4
button2 - 3
button3 - 5
button4 - 2
button5 - 1
И каждый раз, когда я нажимаю большую кнопку снова и снова, номера меняются.
Я пробовал этот скрипт для обработчика onmouseup
на большой кнопке, но это неправильный путь, потому что иногда он вызывает задержку процесса.
put random(5) into num1
put random(5) into num2
put random(5) into num3
put random(5) into num4
put random(5) into num5
repeat until num2 is not num1
put random(5) into num2
end repeat
repeat until num3 is not num1 and num3 is not num2
put random(5) into num3
end repeat
repeat until num4 is not num3 and num4 is not num2 and num4 is not num1
put random(5) into num4
end repeat
repeat until num5 is not num4 and num5 is not num3 and num5 is not num2 and num5 is not num1
put random(5) into num5
end repeat
put num1 to button "button1"
put num2 to button "button2"
put num3 to button "button3"
put num4 to button "button4"
put num5 to button "button5"
Каков правильный способ сделать это?
Дополнительная: Есть ли способ для генерации случайных чисел с исключениями?