![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Подскажите плиз...в поиске не нашел...
Нужно убрать числа после запятой вызванные при деление....например у меня в Лайбеле выводиться "5.78945482319". А хотелось бы убрать после точки все цифры..как сделть? |
#2
|
|||
|
|||
![]() Если "Х" твоя переменная, то Round(X) будет равно 6, а Trunc(X) будет равно 5. Вот и все проблемы.
|
#3
|
||||
|
||||
![]() Вариантов много, один вам уже дали.
Вот второй: Код:
Label1.Caption := Format('%2.0f', [5.12345]); Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#4
|
||||
|
||||
![]() Да, но при Round(1.5) = 2 и при Round(2.5) = 2.
Где- то стырил функцию "правильного" округления Код:
function RoundEx(X: Double; Precision: Integer ): Double; // округлить не по дефолту { Precision : 1 - до целых 10 - до десятых 100 - до сотых ... } var ScaledFractPart, Temp: Double; begin ScaledFractPart := Frac(X) * Precision; Temp := Frac(ScaledFractPart); ScaledFractPart := Int(ScaledFractPart); if Temp >= 0.5 then ScaledFractPart := ScaledFractPart + 1; if Temp <= -0.5 then ScaledFractPart := ScaledFractPart - 1; RoundEx := Int(X) + ScaledFractPart / Precision; end; Последний раз редактировалось TOJluK, 14.10.2009 в 09:50. |
#5
|
|||
|
|||
![]() Цитата:
|