Как преобразовать число с плавающей запятой в строку в Delphi, указав значащие цифры, а не десятичные цифры (и не формат G)

Обычно я печатаю числа с определенным количеством десятичных цифр, но теперь мне нужно напечатать число с указанным количеством значащих цифр. Числа должны быть как "1.23", а не как "1.2 E0". Я вижу, что Delphi сделает последнее с форматом G, но я не вижу, как это сделать в первом формате.


person jon bondy    schedule 10.01.2013    source источник
comment
Как вы печатаете числа? покажи код!   -  person jachguate    schedule 11.01.2013


Ответы (2)


Использовать формат:

Format('%.3g',[Value]));

'g' указывает на значащие цифры, я позволю вам понять, что означает 3...

person Steve Magness    schedule 27.02.2014

FormatFloat('0.000', YourFloatNumber)

Используйте столько нулей, сколько вам нужно для представления цифр.

person gustavogbc    schedule 10.06.2013
comment
«значащие цифры» не определяют фиксированное количество десятичных знаков. Вот ссылка, если вы хотите узнать больше: en.wikipedia.org/wiki/Significant_figures - person Bjarke Moholt; 04.10.2015