Вход


Главная страница >> Учебный процесс >> Конспекты >> Delphi. Библиотека визуальных компонентов VCL >> Справочник по функциям Delphi. Функции работы со строками типа String >> Справочник по функциям Delphi. Функциии преобразования чисел с плавающей точкой >> Преобразование чисел с плавающей точкой. Функция FormatFloat
Переход на главную страницу

Сервер поддерживается
кафедрой информатики и вычислительной техники ГрГУ
тел. +375-(0)152-445-101
E-mail :
kadan@grsu.grodno.by


[Назад]    [Содержание ]    [Вперед]

  


Преобразование чисел с плавающей точкой. Функция FormatFloat


Наконец, возможность полного управления форматом предоставляет функция FormatFloat:

function FormatFloat(const Format: string;
═════════════════════Value: Extended): string;

Она преобразует число в строку в соответствии со спецификатором формата, содержащимся в параметре Format. Правила его задания следующие:

0 Поле для цифры. Если форматируемая величина имеет в этой позиции цифру, то вставляется она, в противном случае вставляется 0.
# Поле для цифры. Если форматируемая величина имеет в этой позиции цифру, то вставляется она, в противном случае ничего не вставляется.
. Поле для десятичной точки. Сюда вставляется символ, определенный константой DecimalSeparator.
, Поле для разделителя тысяч. Оно означает, что группы по три цифры, считая влево от десятичной точки, будут разделяться специальным символом (он задан константой ThousandSeparator). Местоположение поля может быть произвольным.
Е+, Е-, е+, е- Признаки представления числа в научном формате. Появление любого из этих аргументов означает, что число будет преобразовано с характеристикой и мантиссой. Вставка нулей после такого аргумента позволяет определить ширину мантиссы. Разница между Е+, е+ и Е-, е-в том, что в первых двух случаях ставится "+" при выводе положительных чисел.
'XX' "XX" Символы, заключенные в обычные или двойные кавычки, напрямую включаются в выходную строку.
> Разделяет спецификаторы формата для положительных, отрицательных и нулевых чисел.

Примечания:

1. Число всегда округляется до той точности, которую позволяет заданное программистом количество полей для размещения цифр ('0' и '#').

2. Если у преобразуемого числа слева от десятичной точки получается больше значащих цифр, чем задано полей дтя их размещения, то цифры все равно добавляются в строку. Если полей недостаточно справа от точки, происходит округление.

3. Символ ';' позволяет задать три разных формата вывода для чисел с разным знаком. При различном количестве форматов они применяются следующим образом:

один: применяется для всех чисел; два: первый применяется для чисел, больших или равных нулю, второй ? для отрицательных; три: первый применяется для положительных, второй ? для отрицательных чисел, третий ? для нуля.

Если форматы для отрицательных чисел или нуля пусты, применяется формат для положительных чисел.

Если пуст формат для положительных чисел или спецификатор формата вообще не задан (пустая строка), то числа форматируются согласно обобщенному формату (как в функции FloatToStr). Такое форматирование применяется также в случае, если число значащих цифр слева от десятичной точки превысило 18 и не задан научный формат.

Применение спецификатора иллюстрируется в таблице на примере преобразования четырех чисел:

Спецификатор

1234

-1234

0.5

0

0 1234 -1234 1 0
0.00 1234.00 -1234.00 0.50 0.00
#.## 1234 -1234 .5  
#.##0.00 1,234.00 -1,234.00 0.50 0.00
#,##0.00;(#,##0.00) 1,234.00 (1,234.00) 0.50 0.00
#,##0.00;;Zero 1,234.00 -1,234.00 0.50 Zero
0.000Е+00 1.234Е+03 -1.234Е+03 5.000Е-01 0.000Е+00
#.###Е-0 1.234ЕЗ -1.234ЕЗ 5Е-1 0Е0



[Назад]    [Содержание ]    [Вперед]

  


Для комментария : kadan@grsu.grodno.by

  
За содержание страницы отвечает Гончарова М.Н.
©
Кафедра СПиКБ, 2002-2017