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

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.09.2006, 00:51
inviss вне форума Посмотреть профиль Отправить личное сообщение для inviss Найти все сообщения от inviss
  № 21  
Ответить с цитированием
inviss

Регистрация: Aug 2006
Сообщений: 18
это как?

Старый 11.09.2006, 01:12
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 22  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
тут принципиальный вопрос =) если твоя функция теоретически должна работать бесконечно, а картинок у тебя, очевидно, ограниченное количество, то повторится все равно когда нибудь прийдется %)
Ну а если ты просто хочешь разбить на циклы и сделать так, чтобы в пределах цикла картинки не повторялись - тогда алгоритм такой:
создаешь массив с именами картинок, дублируешь его, после демонстрации очередной картинки просто удаляешь из сдублированного массива ссылку на нее и генеришь новое рандомное число в пределах оставшихся картинок. И так пока в массиве не останется ни одного элемента, потом снова дублируешь массив, и так до бесконечности %)

ЗЫ. но на самом деле, как по мне, просто хватило бы проверять идентичность вновь сгенеренного рандомального числа с текущим именем картинки, и если они идентичны - генерить новое, пока они не будут разными. На сколько я понял, основная проблема в том, что одна и та же картинка может экспонироваться 2 и больше раз подряд, так вот чтобы этого не было - можно просто проверять не совпадает ли текущий номер с новым =)
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 11.09.2006 в 01:22.
Старый 11.09.2006, 01:55
inviss вне форума Посмотреть профиль Отправить личное сообщение для inviss Найти все сообщения от inviss
  № 23  
Ответить с цитированием
inviss

Регистрация: Aug 2006
Сообщений: 18
вот я тожэ хотел сделать проверку на совпадение
но не знаю как тк функция продлжает выполнение вместо того чтобы снова вернуться на место где генерися число

Старый 11.09.2006, 02:18
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 24  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Код:
var _l1:Array = [];
var _l2:Array = [];
for (i=0; i<10; i++) {
	_l1[i] = i;
}
i = 0;
while (i<_l1.length*10) {
	var Rnd:Number = Math.ceil(Math.random()*_l1.length);
	if (_l2[i-1] != Rnd) {
		_l2[i] = Rnd;
		i++;
	}
}
trace(_l2); // В этом массиве никогда не будет 2 одинаковых числа подряд
__________________
Hell is the possibility of sanity

Старый 11.09.2006, 07:36
Juice_Green вне форума Посмотреть профиль Отправить личное сообщение для Juice_Green Посетить домашнюю страницу Juice_Green Найти все сообщения от Juice_Green
  № 25  
Ответить с цитированием
Juice_Green
 
Аватар для Juice_Green

Регистрация: Dec 2005
Адрес: Новосибирск
Сообщений: 529
Отправить сообщение для Juice_Green с помощью ICQ Отправить сообщение для Juice_Green с помощью Skype™
2 wvxvw:
можно было немного попроще:
Код:
function randSort():Number {
	return (Math.random() >= 0.5) ? 1 : -1;
	}
	
var arr:Array = new Array(1, 2, 3, 4, 5, 6, 7, 8, 9);
trace(arr.sort(randSort));

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

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

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


 


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


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