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

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

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

Регистрация: Jun 2010
Сообщений: 120
По умолчанию Проблемы с random

Имеется такой код:
Код AS3:
var numElem:Number = 10;
 
for (var i:int = 0; i < numElem; i++)
{
	var temp:MovieClip = new block;
	temp.x = Math.random()*550;
	temp.y = Math.random()*400;
	trace(Math.random());
	addChild(temp);
}
В цикле на stage размером 550x400 случайным образом добавляются мувики. Вроде бы все ясно. Но не понятны вот эти две строчки:

Код AS3:
temp.x = Math.random()*550;
temp.y = Math.random()*400;
Я знаю, что random от 0 до 1. Но ведь random может принять значение равное, к примеру, 0,0001 и тогда наш мувик не будет виден на сцене ? Хотя этими двумя строчками описанными выше, я указывал случайное расположение наших мувиков в границах нашей сцены.

Старый 24.10.2010, 22:04
cleptoman вне форума Посмотреть профиль Отправить личное сообщение для cleptoman Найти все сообщения от cleptoman
  № 2  
Ответить с цитированием
cleptoman
 
Аватар для cleptoman

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
это почему он не будет виден?
и в чем, собсно проблема?
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

Старый 24.10.2010, 22:15
goldlider вне форума Посмотреть профиль Отправить личное сообщение для goldlider Найти все сообщения от goldlider
  № 3  
Ответить с цитированием
goldlider

Регистрация: Jun 2010
Сообщений: 120
Sorry !! Ошибся. Неправильно умножил. Я подумал, что при значении начинающимися с
0,0001 мувик по оси x и оси у будет иметь минусовые значения. Но это конечно же глупо.

Старый 29.11.2010, 20:40
Angry_Basic вне форума Посмотреть профиль Отправить личное сообщение для Angry_Basic Найти все сообщения от Angry_Basic
  № 4  
Ответить с цитированием
Angry_Basic

Регистрация: Nov 2010
Сообщений: 3
всем здрасьте! можете помочь с функцией Math.random() ? если не трудно, киньте текстовый файлик с 10 000 чисел, выданными этой функцией
мыло: basic.mehmat@gmail.com
буду очень признателен !

Старый 29.11.2010, 20:54
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 5  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Цитата:
всем здрасьте! можете помочь с функцией Math.random() ? если не трудно, киньте текстовый файлик с 10 000 чисел, выданными этой функцией
А почему нельзя самому сгенерить эти значения?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 29.11.2010, 20:59
Angry_Basic вне форума Посмотреть профиль Отправить личное сообщение для Angry_Basic Найти все сообщения от Angry_Basic
  № 6  
Ответить с цитированием
Angry_Basic

Регистрация: Nov 2010
Сообщений: 3
я не программирую на ActiveScript пока разберусь, что к чему - уйдет вся ночь, а у вас это займет минут 5

Старый 29.11.2010, 21:06
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
2 + 9998 (трейс ide не хочет показывать больше 9998, поэтому в два прохода)

А код такой
Код AS3:
var str:String = '';
for (var i:int = 0; i < 10000; i++) {
	str += Math.random ()+ '\r';
}
trace(str);
Вложения
Тип файла: zip random.zip (87.5 Кб, 39 просмотров)
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 29.11.2010, 21:13
Angry_Basic вне форума Посмотреть профиль Отправить личное сообщение для Angry_Basic Найти все сообщения от Angry_Basic
  № 8  
Ответить с цитированием
Angry_Basic

Регистрация: Nov 2010
Сообщений: 3
огромное спасибо !
может еще подскажете, на чем основан Math.random() и есть ли у него период ? на форумах нашел лишь общие недовольства этой функцией, но ничего конкретного

Старый 29.11.2010, 21:16
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 9  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Вообще рандом - это косинус (синус?) от текущей секунды. Зная текущую секунду, можно узнать, какое будет число через секунду после. Это грубо говоря. Поэтому-то его и называют псевдо-рандомом.
__________________
тут я

Старый 29.11.2010, 21:30
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 10  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
По умолчанию 20000

Цитата:
Вообще рандом - это косинус (синус?) от текущей секунды.
Ну это точно не секунда.
Код AS3:
for (var i:int = 0; i < 10; i++) {
	var d:Date = new Date ();
	trace (d.toLocaleTimeString ().split (" ")[0] + d.milliseconds, Math.random ());
}
Код:
08:28:49843 0.8097136490978301
08:28:49843 0.33294321596622467
08:28:49843 0.6392828719690442
08:28:49843 0.9762685438618064
08:28:49843 0.7883037975989282
08:28:49843 0.2682868931442499
08:28:49843 0.7210153164342046
08:28:49843 0.28686058800667524
08:28:49843 0.8446443355642259
08:28:49843 0.7295514871366322
Секунды и миллисекунды совпадают, а рандом разный.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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