Консультация № 68657
26.12.2006, 15:30
0.00 руб.
0 3 3
Здраствуйте експерты !
в результате вычисления я получаю число 2,4353Е10 .
Вопрос : как сделать чтобы число выводилось в норм формате ?
на паскале это было так writeln(S:4:4) ;

Обсуждение

Неизвестный
26.12.2006, 15:47
общий
это ответ
Здравствуйте, VaNuk!

FloatToStrF(Value: Extended; Format: TFloatFormat; Precision, Digits: Integer): string;

Где Format лучше использовать ffFixed
Precision - точность,
digits -кол-во символов после зпт.
Неизвестный
26.12.2006, 16:07
общий
это ответ
Здравствуйте, VaNuk!

Рекомендую Вам пользоваться функцией <font color=purple><b>Format()</b></font>.
<b>function Format(const Format: string; const Args: array of const) : string;</b>

Первым параметром функции выступает форматирующая строка. Это обычная текстовая строка, но в ней на нужных местах стоят специальные символы, которые определяют, какие и как туда будут подставлены параметры.

Второй параметр функции Format называется списком аргументов. Он и содержит "вставляемые" в форматирующую строку параметры. Обратите внимание, что этот открытый массив имеет тип array of const, и в нем может передаваться переменное число разнотипных параметров. Например, после выполнения

<b>S := Format(‘ My nik is %s , year/day %d/%d‘, [‘VaNuk‘, 2006, 26]);</b>

строке S будет присвоено <b>‘ My nik is VaNuk , year/day 2006/26‘</b>.

Для Ваше примера можно поступить так:
<b>z:=1.1234;
S:=Format(‘%7.2f‘,[z]);</b>

Более подробно о параметрах и возможностях функции можно прочитать <a href=http://psf.grsu.by/UchProc/konspekt/delphi/ch05/ch03>ТУТ</a>.

Good Luck!!!
Неизвестный
26.12.2006, 18:44
общий
это ответ
Здравствуйте, VaNuk!

К выше сказанному хочу добавить пример использования форматирования:

procedure TForm1.Button1Click(Sender: TObject);
var c:TDateTime;
begin
c:=now;
Edit1.Text:=FloatToStr(c);
Edit2.Text:=DateTimeToStr(c);
Edit3.Text:=FormatDateTime(‘dd.mm.yyyy tt‘,c);
end;

Удачи!
Форма ответа