Пятница, 22 Ноября 2024, 00:56

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Округление чисел.
RomaN72Дата: Воскресенье, 08 Июня 2014, 19:03 | Сообщение # 1
частый гость
Сейчас нет на сайте
Ребят , помогите, разъясните , как округлить любое дробное число (например 10.5 до 11 или 10.4 до 10).

LunarPixelДата: Воскресенье, 08 Июня 2014, 19:17 | Сообщение # 2
старожил
Сейчас нет на сайте
round(число) - округляет в ближайшую сторону.

OpenGOOДата: Воскресенье, 08 Июня 2014, 20:19 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
Цитата RomaN72 ()
Ребят , помогите, разъясните , как округлить любое дробное число (например 10.5 до 11 или 10.4 до 10).

Неужели этому уже в школе не учат?

Цитата LunarPixel ()
round(число) - округляет в ближайшую сторону.

Какое ближайшее число для 10.5, 10 или 11?)


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
LunarPixelДата: Воскресенье, 08 Июня 2014, 20:23 | Сообщение # 4
старожил
Сейчас нет на сайте
Цитата OpenGOO ()
Какое ближайшее число для 10.5, 10 или 11?)

В таких случаях, если не ошибаюсь, round округляет в меньшую сторону. Хотя не помню точно. smile


OpenGOOДата: Воскресенье, 08 Июня 2014, 20:36 | Сообщение # 5
почти ветеран
Сейчас нет на сайте
LunarPixel, в описании функции round написано что округление происходит к ближайшему чётному числу, т.е. 9.5 и 10.5 округлит до 10.

Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
HaGeДата: Воскресенье, 08 Июня 2014, 21:09 | Сообщение # 6
постоянный участник
Сейчас нет на сайте
Цитата OpenGOO ()
LunarPixel, в описании функции round написано что округление происходит к ближайшему чётному числу, т.е. 9.5 и 10.5 округлит до 10.
справка лжет. все лгут. жизнь тленна

Цитата LunarPixel ()
В таких случаях, если не ошибаюсь, round округляет в меньшую сторону.
если дробная часть меньше 5, то в меньшую сторону. иначе - в большую. алгебраично.


Сообщение отредактировал HaGe - Воскресенье, 08 Июня 2014, 21:22
aFriendДата: Воскресенье, 08 Июня 2014, 22:33 | Сообщение # 7
участник
Сейчас нет на сайте
Цитата HaGe ()
справка лжет. все лгут. жизнь тленна

Справка лжет? Все лгут? Жизнь тлен? Если бы ты не был бы таким пустозвоном, а реально хоть что-нибудь, да понимал, то ты подобной чуши не сказанул бы.
Согласен, жизнь у тебя не идеальна: ты поймал звезду, но это лишь твои проблемы.
LunarPixelДата: Воскресенье, 08 Июня 2014, 22:49 | Сообщение # 8
старожил
Сейчас нет на сайте
HaGe, тут, как раз таки, верный вариант сказал OpenGOO. Я подзабыл эту особенность.
т.е., например, и round(10.5) и round(9.5) вернут 10, а не 11 и 10. Я просто помню, что там нет того, чему в школе учили, если .5, то округляем до большего ) потому сказал только про меньшее ) Ну а в данном случае, используется, так называемое, банковское округление.


XDominatorДата: Понедельник, 09 Июня 2014, 00:15 | Сообщение # 9
постоянный участник
Сейчас нет на сайте
По мат правилам, 10.5 округляется до 10, и 5-ка всегда округляется до 10. Таким образом 10.55(10.555, 10.5555) тоже округляется до 10, а вот 10.56 округлится до 11.

Тем не менее, для округления ВСЕГДА в нижнюю сторону есть функция floor. floor(10.99) даст 10. Есть аналог и для округления в большую, но его не помню.


Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
aFriendДата: Понедельник, 09 Июня 2014, 00:19 | Сообщение # 10
участник
Сейчас нет на сайте
XDominator, иы не прав, нас учили, что пятерка округляется до большего т.е 10.5 = 11, 10.54 = 11, 10.44 = 10, 10,1 = 10
LunarPixelДата: Понедельник, 09 Июня 2014, 00:29 | Сообщение # 11
старожил
Сейчас нет на сайте
XDominator, вообще то, математическое округление .5 - это округление в большую сторону. 10.5 даст 11, а не 10. Собственно, об этом я и говорил постом выше.

Цитата XDominator ()
Есть аналог и для округления в большую, но его не помню

ceil(число)


XDominatorДата: Понедельник, 09 Июня 2014, 00:49 | Сообщение # 12
постоянный участник
Сейчас нет на сайте
Хм, действительно... Пора возвращаться в школу)

Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
HaGeДата: Понедельник, 09 Июня 2014, 08:07 | Сообщение # 13
постоянный участник
Сейчас нет на сайте
Цитата LunarPixel ()
HaGe, тут, как раз таки, верный вариант сказал OpenGOO. Я подзабыл эту особенность.
ну моя справка гласит так: "Возвращает число x, округлённое до ближайшего целого числа." в общем, в любом случае...
Цитата HaGe ()
справка лжет. все лгут. жизнь тленна
happy

Цитата aFriend ()
Справка лжет? Все лгут? Жизнь тлен? Если бы ты не был бы таким пустозвоном, а реально хоть что-нибудь, да понимал, то ты подобной чуши не сказанул бы.
Согласен, жизнь у тебя не идеальна: ты поймал звезду, но это лишь твои проблемы.
слушай, я думал, что у тебя интеллекта хватает только писать слово "идиот" и его производные с кучей ошибок. а ты оказывается еще и иронизировать умеешь? в общем, поражен. отныне я даже буду относиться к тебе как к человеку ))
Fill_FreemanДата: Понедельник, 09 Июня 2014, 13:56 | Сообщение # 14
почетный гость
Сейчас нет на сайте
Цитата XDominator ()
Тем не менее, для округления ВСЕГДА в нижнюю сторону есть функция floor. floor(10.99) даст 10. Есть аналог и для округления в большую, но его не помню.


Обычно это ceil. т.е. ceil(2.3) = 3

Для любопытных: floor и ceil легко запомнть зная, что floor (с англ) - пол; а ceil - потолок.


  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг