![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте, подскажите пожалуйста как дробные числа отображать без целого? Например есть 12,3456 должно быть 3456.
|
|
#2
|
||||
|
||||
|
a:=12.3456;
b:=a-trunc(a); // b=0.3456 дальше можно через str перевести в строку и удалить первые два символа. Думаю так |
|
#3
|
|||
|
|||
|
2 варианта
1. Округлить используя Round 2. Перевести в строку DoubleTostr и разделить |
|
#4
|
||||
|
||||
|
ещё вариант:
Код:
function GetFracPart(A: Extended): String;
begin
Result := FloatToStr(A);
Delete(Result, 1, Pos(',', Result));
end; |
|
#5
|
|||
|
|||
|
Спасибо, помогло. Не подскажите еще как сделать так, чтобы при делении к примеру 30/60 ответ был 0,50 а не 0,5?
|
|
#6
|
||||
|
||||
|
Цитата:
Код:
function AddZero(const S: String): String;
begin
if Pos(',', S) = 0 then // если дробной части нет вообще
Result := S + ',00' // добавляется два нуля
else
begin
if Length(S) - Pos(',', S) = 1 then // если после запятой 1 знак
Result := S + '0' // в конце добавляется 0
else // если всё как надо,
Result := S; // то остаётся без изменений
end;
end;Последний раз редактировалось ryderx34, 14.11.2010 в 11:31. |
|
#7
|
|||
|
|||
|
Спасибо большое.
|