Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Синтаксис
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.06.2008, 13:56
bobneo bobneo вне форума
Прохожий
 
Регистрация: 07.06.2008
Сообщения: 3
Репутация: 10
По умолчанию Как обрезать дробь

Хай всем! Ситуация такая. Вставил QReport, Назвал поля, на вкладку Detail поставил QRExpr1, в инспекторе объектов в свойствах Expression сделал формулу одно поле поделить на другое. Все норм делит но выводит на просмотр такие цифры как 23,34245353242. КАК СДЕЛАТЬ ТАК чтобы выводилось число с 2 знаками после запятой 23,34. Заколебался везде тыркать. ПОМОГИТЕ ПЛИИЗ!!!
Ответить с цитированием
  #2  
Старый 12.06.2008, 18:21
Drozh Drozh вне форума
Активный
 
Регистрация: 12.06.2008
Сообщения: 313
Репутация: 40
По умолчанию Re: Как обрезать дробь

Не особо понял что требуется, может это поможет:
function Format(const Format: string; const Args: array of const): string;

для твоего случая:
Format('%1.2f', [Value]);
где Value - число которое надо преобразовать, функция вернет строку с числом округленным до двух знаков (подробнее прочитай в справке по Delphi)

есть еще
function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;

в нем: Precision - точность, Digits - число цифр;
Значение Precision должно быть не более 7 при преобразовании типа Single, не более 15 для Double, не более 18 для Extended.
Ответить с цитированием
  #3  
Старый 29.08.2008, 02:48
Аватар для <<D>>
<<D>> <<D>> вне форума
Активный
 
Регистрация: 06.05.2007
Адрес: ГДЕ ТО В СОЛНЕЧНОЙ СИСТЕМЕ
Сообщения: 207
Репутация: 15
По умолчанию

Интересно... а как сделать чтобы вместо запятой в числе, была точка.
Пример: Вместо - 12,22, Было - 12.22
__________________
Кому я должен - всем прощаю!!!!
Ответить с цитированием
  #4  
Старый 29.08.2008, 08:22
Аватар для Appolon
Appolon Appolon вне форума
Новичок
 
Регистрация: 10.01.2008
Адрес: гЕйск
Сообщения: 76
Репутация: 16
По умолчанию

Цитата:
Сообщение от Drozh
Не особо понял что требуется, может это поможет:
function Format(const Format: string; const Args: array of const): string;

для твоего случая:
Format('%1.2f', [Value]);
где Value - число которое надо преобразовать, функция вернет строку с числом округленным до двух знаков (подробнее прочитай в справке по Delphi)

есть еще
function FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;

в нем: Precision - точность, Digits - число цифр;
Значение Precision должно быть не более 7 при преобразовании типа Single, не более 15 для Double, не более 18 для Extended.
А не проще ли будет сделать вот так, чем возиться с функициями:
Код:
Edit1.Text:=FloatToStr(Round(12,563*100)/100);
Цитата:
Сообщение от <<D>>
Интересно... а как сделать чтобы вместо запятой в числе, была точка.
Пример: Вместо - 12,22, Было - 12.22
Для этого в коде создания главной формы укажи команду:
Код:
DecimalSeparator := '.';
__________________
From VasYa with LoVe...
Ответить с цитированием
  #5  
Старый 29.08.2008, 08:23
Аватар для moo2k
moo2k moo2k вне форума
Активный
 
Регистрация: 05.12.2006
Адрес: где-то там...
Сообщения: 321
Репутация: 35
По умолчанию

Код:
DecimalSeparator:='.';
__________________
Программирование - это искусство и наш смысл жизни.
Ответить с цитированием
  #6  
Старый 29.08.2008, 13:08
Аватар для <<D>>
<<D>> <<D>> вне форума
Активный
 
Регистрация: 06.05.2007
Адрес: ГДЕ ТО В СОЛНЕЧНОЙ СИСТЕМЕ
Сообщения: 207
Репутация: 15
По умолчанию

Спасибо!
Есть еще вопросик.
Мне нужно что бы текст с цифрами имел структуру вместо 123456789 было 123 456 789, т.е. разделяло через каждые три символа. Как это можно сделать?
__________________
Кому я должен - всем прощаю!!!!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter