Округление чисел в МТ4 через NormalizeDouble - страница 10

 
Алексей Тарабанов:
В начале 80-х годов прошлого столетия под моим чутким руководством трудилась выпускница Ногинского программистского техникума Лосева Антонина Ивановна. Вот, как она решала задачу округления до целого: int A = double B + 0.5 

Спасибо за вашу историю, щас "int A = double B + 0.5" решается: int A = (int)MathCeil(double B);

Но речь в данном случае как обрезать без округления. 

 
lilita bogachkova:

Спасибо за вашу историю, щас "int A = double B + 0.5" решается: int A = (int)MathCeil(double B);

Но речь в данном случае как обрезать без округления. 

Обрезать без округления легко, просто не округлять (не увеличивать double на 0.5 шага округления). 

А свою конструкцию сравните с моею по быстродействию, да и неправильна Ваша, уж извините...  

 
Dmitry Fedoseev:

DoubleToStr(0.9999,3)=1.000

Вот и делайте выводы.  

При чём тут 3? Мы же используем Бид и Диджитс.

А что то вас не пойму. В другой теме я это долбил 3 страницы. Что как обрезать вот например на вашем примере не зная количество дробных символов и вы доказывали что 0-и не считаются и правильно. 

 

 DoubleToStr(0.9999,4)

а потом режим один символ 

 
Алексей Тарабанов:

Обрезать без округления легко, просто не округлять (не увеличивать double на 0.5 шага округления). 

... 

 

Код? 

 
Vasyl Nosal:

int A =double B 

Сердце не прихватило?  

 
Vasyl Nosal:

При чём тут 3? Мы же используем Бид и Диджитс.

А что то вас не пойму. В другой теме я это долбил 3 страницы. Что как обрезать вот например на вашем примере не зная количество дробных символов и вы доказывали что 0-и не считаются и правильно. 

Незнаю что вы там. Мы вроде отбрасываем до заданного количества знаков.
 
Алексей Тарабанов:

int A =double B 

Сердце не прихватило?  

Это уже код?

Это ещё лучше  NormalizeDouble(1.15-0.05,1);

:))))))))))))))) 

 
Dmitry Fedoseev:
Незнаю что вы там. Мы вроде отбрасываем до заданного количества знаков.
Отбрасываем. Но дабл преобразоываем в стринг по всему количеству дробных символов.
 
Vasyl Nosal:

Это уже код?

Это ещё лучше  NormalizeDouble(1.15-0.05,1);

:))))))))))))))) 

Да, весело... 
 
Vasyl Nosal:

...

 DoubleToStr(0.99999,4)

а потом режим один символ 

А если так?

Причина обращения: