Прошло довольно много времени с тех пор, как я в последний раз использовал D Язык программирования , и теперь я использую его для какого-то проекта, который включает научные расчеты.
У меня есть куча данных с плавающей запятой, но когда я печатаю их, используя writefln
, я получаю результаты вроде: 4.62593E-172
, что равно нулю! Как использовать форматирование строки% stuff для печати таких вещей, как 0?
Прямо сейчас я использую хак:
if( abs(a) < 0.0000001 )
writefln(0);
else
writefln(a);
это делает работу, но я хочу сделать это, используя операции форматирования, если это возможно.
UPDATE
кто-то предложил writefln("%.3f", a)
, но проблема в том, что он печатает ненужные лишние нули, то есть 0
становится 0.000
и 1.2
становится 1.200
Можно ли сделать так, чтобы он также удалял завершающие нули?