Показать сообщение отдельно
Старый 12.03.2017, 15:10
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 7  
Ответить с цитированием
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Цитата:
И еще такой вопрос, 0.0385 это 3.85%? А если установить 0.55385, это какая вероятность? 55.385%?
Если бы вы не прогуливали уроки Теории вероятности, то знали бы, что вероятность может пребывать не только в процентной форме, но и в форме дроби. с:

Godwarlock, перед тем как задать вопрос "что возвращает Math.random()", попробуйте обратиться к документации от Adobe, где чётко и ясно на русском языке написано, что он возвращает.
http://help.adobe.com/ru_RU/FlashPla....html#random()

Вообще, Math.random без скобок возвращает функцию.
Код AS3:
var f:Function = Math.random;
trace(f()); // какое-то случайное значение

Цитата:
Через Math.random получается только с целыми числами и то, выпадение от 1-4(если к примеру шанс выпадения равен 4%) это достаточно большой шанс мне кажется
Довольно забавно, но в этом случае
Код AS3:
trace( int ( 1 + Math.random()*4));
шанс выпадения 1 из 4, 2 из 4, 3 из 4 и 4 из 4 одинаков, так как Math.random() возвращает псевдослучайное число от 0 до 1 без уклона в какую-либо сторону(равномерно).
Проверить это можно так:

Код AS3:
package com.zackmercury.test
{
	import flash.display.Sprite;
	import flash.events.Event;
 
	/**
	 * ...
	 * @author ZackMercury
	 */
	public class Main extends Sprite 
	{
 
		public function Main() 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			var numsDrops:Vector.<uint> = new <uint>[0, 0, 0, 0];
			var length:int = numsDrops.length;
 
			for (var i:int = 0; i < 10000; i ++)
			{
				numsDrops[int(Math.random() * length)] ++;
			}
 
			trace(numsDrops.toString());
		}
	}
 
}
->
Код:
2521,2520,2514,2445
Больше оборотов
Код AS3:
for (var i:int = 0; i < 10000000; i ++)
Код:
2500448,2498833,2499876,2500843
Что означает, что шанс выпадения 1 из 4 при использовании Math.random() является 1/4, тоесть, 0.25(что не равно 4%(0.04))

Цитата:
это скобки дают результат возврата boolen-а
Скобки не могут ничего возвращать, они просто определяют порядок действий над операндами.
А вот логические операторы( > < == <= >= === <== >== != ! ) возвращают булевые значения, это же основы.
__________________
There is no thing in this world that is not simple.


Последний раз редактировалось ZackMercury; 12.03.2017 в 16:07.