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

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

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

Регистрация: Mar 2010
Сообщений: 223
По умолчанию Неправильное округление.

Правильное округление: Math.round(4.6) = 5
Мне же необходимо 4.99 = 4, а 5,0 = 5
Можно ли это с помощью встроенных средств сделать, или только кодить.?..

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Math.floor
Есть еще Math.ceil который даст для этих двух чисел 5.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 09.08.2010, 04:26
cpu вне форума Посмотреть профиль Отправить личное сообщение для cpu Найти все сообщения от cpu
  № 3  
Ответить с цитированием
cpu

Регистрация: Mar 2010
Сообщений: 223
Спасибо. реально туплю, чет по документации подумал что floor выбирает самое большое из 2-х чисел. Вот что значит бегло читать..(

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

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

Старый 21.01.2011, 18:37
P_A вне форума Посмотреть профиль Отправить личное сообщение для P_A Найти все сообщения от P_A
  № 5  
Ответить с цитированием
P_A

Регистрация: Dec 2010
Сообщений: 9
Попробуйте. Работает и для положительных и для отрицательных
Код AS3:
var a:Number=24.9;
var b:int=a;
trace(b); 
a=-a;
b=a;
trace(b);
 
//=====   24
//=====   -24

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Не все так просто. 4 разных способа округления дают 4 разных результата.
Код AS3:
var a:Number = 24.9;
var b:Number = 24.1;
trace (int (a));		// 24
trace (int (b));		// 24
trace (int ( -a));		//-24
trace (int ( -b));		//-24
trace ();
trace (Math.floor (a));		// 24
trace (Math.floor (b));		// 24
trace (Math.floor ( -a));	//-25
trace (Math.floor ( -b));	//-25
trace ();
trace (Math.ceil (a));		// 25
trace (Math.ceil (b));		// 25
trace (Math.ceil ( -a));	//-24
trace (Math.ceil ( -b));	//-24
trace ();
trace (Math.round (a));		// 25
trace (Math.round (b));		// 24
trace (Math.round ( -a));	//-25
trace (Math.round ( -b));	//-24
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
вопреки логике -24.1 округлённый в меньшую сторону будет -25, в то время как 24.1 будет 24. Можно округлять в сторону нуля(т.е. положительные в меньшую, а отрицательные в большую) это пелчится путём приведения к инту. (что кстати с точки зрения математики не совсем корректно т.к. у числа -24,1 целая часть -25 а дробная 0,9, т.к. дробная часть положительна по определению)

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

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


Последний раз редактировалось КорДум; 21.01.2011 в 19:13.
Старый 21.01.2011, 19:21
Aquahawk вне форума Посмотреть профиль Отправить личное сообщение для Aquahawk Посетить домашнюю страницу Aquahawk Найти все сообщения от Aquahawk
  № 9  
Ответить с цитированием
Aquahawk
 
Аватар для Aquahawk

Регистрация: Nov 2010
Адрес: Москва
Сообщений: 915
Записей в блоге: 4
Отправить сообщение для Aquahawk с помощью ICQ Отправить сообщение для Aquahawk с помощью Skype™
Я знаю что по математическим правилам будет -25, но обычно когда я говорю про округление в меньшую сторону я подразумеваю округление в сторону ноля.

Добавлено через 31 секунду
и многие люди тоже

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

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

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

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

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


 


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


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