Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 20.03.2002, 12:34
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 1  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
По умолчанию случайный вопрос

Привествую!


Хочю сделать на Flash'e систему тестирования, таку простенкую, вопросов на 20.
И как всегда, возник, вдруг откуда не возмись!!! вопрос!!!

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

Так вот вопрос в том, как избавиться от повторения при случайном вопросе?
Наверно, тут нужен массив!

Возможно эта тему уже публиковалась,
Вы меня уж извините!!!
Дайте тогда ссылку!!!

Спасибо за внимание!!!

Старый 20.03.2002, 13:10
Darina вне форума Посмотреть профиль Отправить личное сообщение для Darina Посетить домашнюю страницу Darina Найти все сообщения от Darina
  № 2  
Darina
 
Аватар для Darina

Регистрация: Aug 2001
Адрес: Киев
Сообщений: 551
Отправить сообщение для Darina с помощью ICQ
Может, можно как-то лучше, но вот такой способ используется в криптосистеме RC4:
массив делать прийдется, допустим, это массив Quest [] с номерами вопросов по порядку:
for (i=1; i<=20; i++)
{Quest[i]=i;}
А перемешиваются они так:
for (i=1; i<=20; i++)
{num=random(20);
tmp=Quest[i];
Quest[i]=Quest[num];
Quest[num]=tmp;
}

Старый 20.03.2002, 13:15
AZart.de вне форума Посмотреть профиль Отправить личное сообщение для AZart.de Посетить домашнюю страницу AZart.de Найти все сообщения от AZart.de
  № 3  
AZart.de

Регистрация: Jan 2002
Адрес: Germany
Сообщений: 87
Отправить сообщение для AZart.de с помощью ICQ
myslish werno, a algoritm - shkol'niy
zavodish sebe massiv x[kol-vo voprosov]
tmp=0
while tmp<kol-va elementov
{
y=math.round(math.random(kol-vo voprosov))
(y v massive uje imeetsia?)
then {x[i]=y;tmp=tmp+1;}
}

vot i vse, na vihode - slu4. uporiado4enniy massiv
ili ty hotel gotoviy skript??
__________________
Knizhki umnie 4itat' nado(C) fil'm-detyam

Старый 20.03.2002, 14:17
Egoritch вне форума Посмотреть профиль Отправить личное сообщение для Egoritch Посетить домашнюю страницу Egoritch Найти все сообщения от Egoritch
  № 4  
Egoritch
"Ниразу не флэшер"
 
Аватар для Egoritch

Регистрация: Nov 2001
Адрес: +38-067-...
Сообщений: 1,434
Отправить сообщение для Egoritch с помощью ICQ
вот скрипт. в свое время помучился (противно, что флэш команды goto не знает)

N=30; //кол. элементов

for (i=0;i<N;i++){
oo1=0;
while (oo1==0){
oo1=2;ooo=random(N);
for (i1=0;i1<i;i1++) if (sToy[i1]==ooo)oo1=0;}
sToy[i]=ooo;
}

на выходе в массиве sToy круто переменшанный список.
А вопрос этот поднимался. кто-то из админов помещал прям прототип.
__________________
стучитесь в асю за дополнительной помощью....
ЗЫ: ПОИСК действительно рулит.

Старый 20.03.2002, 15:46
Sveta вне форума Посмотреть профиль Отправить личное сообщение для Sveta Найти все сообщения от Sveta
  № 5  
Sveta
 
Аватар для Sveta

Регистрация: Jan 2001
Адрес: временно Москва
Сообщений: 1,116
Отправить сообщение для Sveta с помощью ICQ
Ну, вот, набросала, без повторения...
var width_but=50,x_but=200,y_but=200
a=["a","b","c","d","e"]
_root.createEmptyMovieClip("b",1)
b.moveTo(x_but,y_but)
b.lineStyle(1,0)
b.beginFill(0xFF0000)
b.lineTo(x_but+width_but,y_but)
b.lineTo(x_but+width_but,y_but+width_but)
b.lineTo(x_but,y_but+width_but)
b.lineTo(x_but,y_but)
b.endFill()
b.onRelease=function(){
z=[]
z2=["a","b","c","d","e"]
for (var i=0;i<a.length;i++){
n=random(z2.length)
z.push(z2.splice(n,1))
}
trace(z)
}
__________________
-----------------
Глава, последняя в этой истории: Добро побеждает Зло и наступает Happy End, но какой-то подозрительный!
----------------

Старый 20.03.2002, 16:07
Sveta вне форума Посмотреть профиль Отправить личное сообщение для Sveta Найти все сообщения от Sveta
  № 6  
Sveta
 
Аватар для Sveta

Регистрация: Jan 2001
Адрес: временно Москва
Сообщений: 1,116
Отправить сообщение для Sveta с помощью ICQ
Сорьки за тупые лайны) и т.п. MX - увлекает
__________________
-----------------
Глава, последняя в этой истории: Добро побеждает Зло и наступает Happy End, но какой-то подозрительный!
----------------

Старый 21.03.2002, 13:30
Fiksa вне форума Посмотреть профиль Отправить личное сообщение для Fiksa Найти все сообщения от Fiksa
  № 7  
Fiksa

Регистрация: Jun 2000
Адрес: YS
Сообщений: 117
Спасибо!!!
Очень большое!!!!


Пойду юзать.....

Старый 21.03.2002, 15:36
DeliMIter вне форума Посмотреть профиль Отправить личное сообщение для DeliMIter Найти все сообщения от DeliMIter
  № 8  
DeliMIter
некрофил
 
Аватар для DeliMIter

Регистрация: Mar 2002
Адрес: ...по колено в кровище...
Сообщений: 2,292
Какие-то коды у вас мрачные. Хы. Не факт, что у меня сильно светлый.
Допустим имеется массив вопросов Questions, тогда

// перед новым опросом нужно сделать
function Reset() {
QRandom = (new Array()).concat(Questions);
}

// чтобы добыть случайный вопрос нужно
function getQuestion() {
var _result = "There's no more...";
if (QRandom.length > 0) {
var _index = random(QRandom.length);
_result = QRandom[_index];
QRandom.splice(_index, 1);
}
return _result;
}

Успехов


Последний раз редактировалось DeliMIter; 21.03.2002 в 15:39.
Старый 21.03.2002, 18:53
Darina вне форума Посмотреть профиль Отправить личное сообщение для Darina Посетить домашнюю страницу Darina Найти все сообщения от Darina
  № 9  
Darina
 
Аватар для Darina

Регистрация: Aug 2001
Адрес: Киев
Сообщений: 551
Отправить сообщение для Darina с помощью ICQ
Чем-то всё это напоминает:
http://slava.podolsk.ru/prog.php

Создать новую тему   Часовой пояс GMT +4, время: 12:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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