Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Перемешивание вопросов в тесте. (http://www.flasher.ru/forum/showthread.php?t=98274)

wellskii 10.07.2007 16:48

Перемешивание вопросов в тесте.
 
Подскажите пожалуйста, каким образом можно реализовать перемешивание кадров в тесте. Т.е., имеется тест, в котором последовательность вопросов задана статично(1 вопрос-один кадр)при помощи play(); в предыдущем и stop(); в последующем кадре.
Теперь необходимо рандомайзное появление вопроса.
Буду благодарен, если подкинете ссылку на пример или документацию.

chingachgoog 10.07.2007 17:12

Что-то таким образом
Код:

gotoAndStop(Math.floor(Math.random()*_totalframes);

wellskii 10.07.2007 17:25

Спасибо. Но как тут ведется проверка на прохождение всех тестов?

VladBD 10.07.2007 17:44

сгенерируй массив из рандомных, неповторяющихся всех кадров шкалы и вызывай gotoandPlay() из массива

wellskii 10.07.2007 18:26

Мысль хорошая, но как реализовывается выборка из массива с последующим удалением выбранного элемента?

VladBD 10.07.2007 18:43

Вот писал под пятняшки, вообще можно переделать под универсальную функцию

Код:

//создание массива случайных чисел       
  a1 = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16];
  a2 = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
  for (i=1; i<=a1.length; i++) {
        n=random(a1.length-i+1);
        a2[a1.length-i]=a1[n]-1;
        for (j=n; j<=a1.length-2; j++) {a1[j]=a1[j+1];}
  }


chingachgoog 10.07.2007 18:44

Тогда надо создать массив типа [1,2,3...] - по числу кадров с вопросами.
Перемешать его (недавно обсуждали) и далее спокойно проверять/переходить/и т.п. с i-тым элементом массива по очереди разбираться.

wellskii 10.07.2007 19:08

Спасибо, буду пробовать. Если что, поспрашиваю еще :)


Часовой пояс GMT +4, время: 03:59.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.