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

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

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

Регистрация: Aug 2010
Сообщений: 282
По умолчанию random от -1 до 1

Всем привет,
Подскажите как вывести рандомное значение в пределах от -1 до 1
пока придумал только так, но он мне кажется не особо корректен...
Вероятно есть более простой способ. Читать справку лень )))

Код AS3:
randomMinus = Math.random()*-1; //Отрицательные значения
randomPlus = Math.random();        //Положительные значения
 
randomSumm = randomPlus + randomMinus; //Итоговое число

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

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Код AS3:
Math.random() * 2 - 1;
__________________
Поймай яблоко 2!

Старый 04.06.2013, 13:56
vivado вне форума Посмотреть профиль Отправить личное сообщение для vivado Найти все сообщения от vivado
  № 3  
Ответить с цитированием
vivado

Регистрация: Aug 2010
Сообщений: 282
Цитата:
Сообщение от Zebestov Посмотреть сообщение
Код AS3:
Math.random() * 2 - 1;
Этож так просто от 0 до 2 и еденичку отнимать.
Вот спасибо, чето я туплю, видать не выспался )))

Старый 04.06.2013, 13:57
maincode вне форума Посмотреть профиль Отправить личное сообщение для maincode Посетить домашнюю страницу maincode Найти все сообщения от maincode
  № 4  
Ответить с цитированием
maincode

Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
общая формула:
Код AS3:
min + (max-min)*Math.random()
__________________
FlashPress.ru | Blog

Старый 04.06.2013, 14:29
zuxul вне форума Посмотреть профиль Отправить личное сообщение для zuxul Найти все сообщения от zuxul
  № 5  
Ответить с цитированием
zuxul

Регистрация: Dec 2009
Адрес: 59°13′N, 39°54′E
Сообщений: 445
Записей в блоге: 1
Судя по вопросу (а не то, что имел ввиду автор) просили отрезок (-1, 1).
Предложенный вариант возвращает [-1, 1)
Правильного ответа не знаю

Старый 04.06.2013, 14:38
maincode вне форума Посмотреть профиль Отправить личное сообщение для maincode Посетить домашнюю страницу maincode Найти все сообщения от maincode
  № 6  
Ответить с цитированием
maincode

Регистрация: Feb 2010
Адрес: Город суеты
Сообщений: 191
Цитата:
Сообщение от zuxul Посмотреть сообщение
Предложенный вариант возвращает [-1, 1)
Вероятность того что random вернет 0 так же мала, как и то, что random будет равен 1, поэтому конструкция
Код AS3:
Math.random() * 2 - 1;
вернет значение из интервала (-1; 1)
__________________
FlashPress.ru | Blog

Старый 04.06.2013, 15:53
Final Hope вне форума Посмотреть профиль Найти все сообщения от Final Hope
  № 7  
Ответить с цитированием
Final Hope
Banned
[+5 04.06.13]
[+1 08.06.13]

Регистрация: May 2013
Сообщений: 52
Цитата:
Сообщение от zuxul Посмотреть сообщение
Судя по вопросу (а не то, что имел ввиду автор) просили отрезок (-1, 1).
Предложенный вариант возвращает [-1, 1)
Правильного ответа не знаю
zuxul, предлагаю поиграть в игру "У кого больше?". Я уже набрал 4179000000 очков и мой счет продолжает расти.))))
Код AS3:
import flash.events.Event;
import flash.text.TextField;
 
this.stop();
 
var tf:TextField = new TextField();
tf.width = 500;
tf.height = 50;
tf.border = true;
this.addChild( tf );
 
var i:int;
var n:Number;
var c:Number = 0;
 
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
 
function enterFrameHandler(e:Event):void
{
	tf.text = c.toString();
	for ( i = 0; i < 1000000; i++ ) 
	{
		c++;
		n = Math.random();
		if ( n == 0 )
		{
			stage.removeEventListener(Event.ENTER_FRAME, enterFrameHandler);
			tf.appendText( "\nGame over! | " + c.toString() + " | " + n.toString() );
			break;
		}
	}
}

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

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
Вероятность того что random вернет 0 так же мала, как и то, что random будет равен 1, поэтому конструкция
Возвращает псевдослучайное число n, где 0 <= n < 1. Так что у 0 очень неплохие шансы
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 04.06.2013, 16:20
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 9  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Final Hope, с тем же успехом можно помериться и таким случаем
Код AS3:
if ( n == 0.123456789 )
__________________
Поймай яблоко 2!

Старый 04.06.2013, 16:24
Final Hope вне форума Посмотреть профиль Найти все сообщения от Final Hope
  № 10  
Ответить с цитированием
Final Hope
Banned
[+5 04.06.13]
[+1 08.06.13]

Регистрация: May 2013
Сообщений: 52
Zebestov, ясное дело. Но речь-то шла о нуле. Да и GBee верно гворит - шансы есть.))))

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

Теги
Рандом

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

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


 


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


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