Как преобразовать переменную float в int?

ToxaRU
Offline
Зарегистрирован: 03.04.2015

Можно ли как то целое число без дроби из float записать в int... мне просто ненужна дробь а только градусы в чистом виде без хвоста..... 

Focus
Offline
Зарегистрирован: 05.04.2015
kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Преобразование может быть разным, можно просто отбрасывать дробную часть, в этом случае если дробная часть меньше 0.5, то получаем нормальный результат, а если 0.9, то будет погрешность в 1 градус. Другой вариант, это преобразование с округлением до целого, тогда 0.9 будет преобразовано в 1 градус, что ближе к реальному значению. Какое именно преобразование нужно Вам, мы не знаем. Поскольку это зависит от задачи.

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

int integer_value  =  float_value + 0.5        //   ......округляет по правилам до целого

vk007
Offline
Зарегистрирован: 16.06.2015

trembo пишет:

int integer_value  =  float_value + 0.5        //   ......округляет по правилам до целого

Если добавлять 0.5, то почему-то не всегда Х.5 округляет до Х+1. Я добавляю 0.51.

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Правил округления штук пять или шесть. Потому как округляется, вопрос философский, пока не озвучено правило округления.