В Делфи:
FloatToStr(-58.399999999999999)="-58.4"
В Лазаре:
FloatToStr(-58.399999999999999)="-58.399999999999999"
Собственно вопрос в следующем.
Ка сделать, чтобы в Лазаре работало так как в Делфи?
Модератор: Модераторы
Format('%.1f', [-58.399999999999999])
shade писал(а):
- Код: Выделить всё
Format('%.1f', [-58.399999999999999])
tria писал(а):В Делфи:
FloatToStr(-58.399999999999999)="-58.4"
if FloatToStr(-58.399999999999999)='-58.4' then
writeln('yes')
else
writeln('no');
FloatToStr(double(-58.399999999999999))
Ну никто не заставляет задавать число знаков после запятой константой, можно формировать форматирующий шаблон в runtime.tria писал(а):Не подходит. Я заранее не знаю, сколько точек после запятой у меня должно получится.
STAKANOV писал(а):А это действителдьно так? Т.е проверка проводилась именно
Edit1.Text:=FloatToStr(-58.399999999999999)
shade писал(а):Ну никто не заставляет задавать число знаков после запятой константой, можно формировать форматирующий шаблон в runtime.tria писал(а):Не подходит. Я заранее не знаю, сколько точек после запятой у меня должно получится.
IHMO, лутше явно указывать число знаков после запятой..
tria писал(а):1. Что за {$IFDEF PIC}? (что такое {$IFDEF} я знаю).
2. Будет ли такой код потом работать под Линуксом (вызовов прерываний в нем нет)?
zub писал(а):а вот так?
function FloatToStr(Value: Extended; const FormatSettings: TFormatSettings): string;
zub писал(а):>>
Такого не бывает. что за задача?
TFormatSettings): string;
zub писал(а):В дельфи тоже могут вылести девятки - особенность плавающей запятой
TFormatSettings): string;
floattostrf(myfloat, FFfixed, 7, 3)
Stargazer писал(а):Я использую
- Код: Выделить всё
floattostrf(myfloat, FFfixed, 7, 3)
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 27