Задача такая: имеется целочисленная переменная, допустим диапазон чисел будет от 1 до 10.
Каждые 2 сек. нужно выдавать рандомное значение этой переменной от 1 до 10, при этом чтобы значения не повторялись пока все значения не будут выданы, только gui
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
7
easypeasy:
TheMilka, а обычными триггерами это можно запилить?
да, конечно
7
easypeasy:
TheMilka, не подскажешь, пожалуйста, как?
cейчас. нужно время. на гуи работать дольше.

создаешь две глобальные переменные А и MAX.
Создаёшь вот такой триггер.
Получить случайное число из списка без повторений командой GetRandomInteger().
Если числа закончились, будешь получать нули.
Загруженные файлы
28
Есть переменная InitialTop, изначально равна 9.
Есть массив Initial, где в ячейках с 0 по 9 находятся значения 1 - 10 без повторений.
Теперь о самом выборе случайного значения.
  1. Присваиваем переменной idx случайное значение с 0 по InitialTop.
  2. Переменной Result присваиваем значение из Initial[idx].
  3. Присваиваем Initial[idx] значение Initial[InitialTop].
  4. Присваиваем InitialTop значение (InitialTop - 1).
  5. Если InitialTop равно -1, то тогда сбрасываем массив Initial и InitialTop в начальное состояние.
13
TheMilka, половина не понял, а в этом триггере сработает сразу 10 циклов?только как выдать только 1 значение и спустя какое то время или событие, выдать другое

Присваиваем Initial[idx] значение Initial[InitialTop].
Присваиваем InitialTop значение (InitialTop - 1).
Если InitialTop равно -1, то тогда сбрасываем массив Initial и InitialTop в начальное состояние.
а это случайно не значит что если первое число, например, выпадет 6 то последующие выпадающие будут меньше 6?

ладно, спасибо буду разбираться
7
easypeasy:
TheMilka, половина не понял, а в этом триггере сработает сразу 10 циклов?только как выдать только 1 значение и спустя какое то время или событие, выдать другое

Присваиваем Initial[idx] значение Initial[InitialTop].
Присваиваем InitialTop значение (InitialTop - 1).
Если InitialTop равно -1, то тогда сбрасываем массив Initial и InitialTop в начальное состояние.
а это случайно не значит что если первое число, например, выпадет 6 то последующие выпадающие будут меньше 6?

ладно, спасибо буду разбираться
эта система создаёт 10 значений. из них ты каждым вызовом берёшь рандомное без повторений. можно ещё добавить, чтобы система обновлялась каждый раз, когда числа внутри ней заканчиваются.
28
а это случайно не значит что если первое число, например, выпадет 6 то последующие выпадающие будут меньше 6?
Нет, результат хранится в переменной Result.
13
TheMilka, PT153, в итоге запилил такой рабочий вариант, без действия wait при быстром нажатии Esc варик крашится, а с действием wait 0 почему то нет
Загруженные файлы
13
Extremator, отвечаю не пойму как после действия Set Max=(Max-1) последующие выпадающие числа могут быть больше текущей выпавшей..
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.