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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 24.10.2011, 17:52
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 1  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Все дело в том, что в случае с round, выпадение крайних значений вероятно лишь в диапазоне длиной 0.5, в отличие от остальных значений. В случае же с int диапазон равен единице на всех значениях.

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

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
int как floor работает получается?
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 24.10.2011, 18:00
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 3  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ну в общем-то да. Т. е. тут неважно, int/floor.

Старый 24.10.2011, 18:53
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 4  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Для положительных - как floor, для отрицательных как ceil. int округляет в сторону нуля, а не вверх или вниз
__________________
...вселенская грусть

Старый 24.10.2011, 18:56
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 5  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ах, ну да, он просто обрезает дробную часть.

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

Регистрация: Sep 2010
Адрес: Ростов-на-Дону
Сообщений: 369
есть еще метод Math.floor(); - с ним все в порядке)

Старый 24.10.2011, 21:25
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 7  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
а выше не о нем говорили? )
int быстрее, и для положительных чисел предпочтительнее.
Тут недавно кто-то даже измерениями занимался, и разница в скорости оказалась довольно существенной

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

Регистрация: Oct 2011
Адрес: Питер
Сообщений: 58
Цитата:
Сообщение от goodguy Посмотреть сообщение
int быстрее, и для положительных чисел предпочтительнее.
Скажу больше, вот это
Код AS3:
value= int(number);
if ( value < 0 ) value--;
будет чуть-чуть быстрее чем Math.floor().

Старый 25.10.2011, 10:58
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 9  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
Цитата:
Сообщение от smithy Посмотреть сообщение
Код AS3:
value= int(number);
if ( value < 0 ) value--;
number = -10;
...
value == -11 - ахтунг!
__________________
Бобры отвечают на вопросы не потому, что знают на них ответы; они отвечают потому, что их спрашивают.

Старый 25.10.2011, 13:32
smithy вне форума Посмотреть профиль Отправить личное сообщение для smithy Найти все сообщения от smithy
  № 10  
Ответить с цитированием
smithy

Регистрация: Oct 2011
Адрес: Питер
Сообщений: 58
Цитата:
Сообщение от -De- Посмотреть сообщение
number = -10;
...
value == -11 - ахтунг!
Это замена Math.floor().
Например, int(-10.123) вернет -10, а Math.floor(-10.123) вернет -11.
Поэтому чтобы использовать int() вместо Math.floor() нужно проверять знак числа и вычитать единицу из отрицательного.

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

Теги
actionscript3.0 , Adobe Flash , flash , math , рандомное число
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

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

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


 


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


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