А у всех так бывает?

Автор designer811, 14.02.23, 10:47:30

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Николай

Насчитал VB6. Программирую чё-то-там. Баг был замечен неоднократно. IgorT, стесняюсь спросить, что же получилось в таблице переменных?

IgorT

Цитата: IgorT от 14.02.23, 16:09:58Мне походу везёт. Ибо:
2023-02-14_16-07-41.png

...
Во как! А что ещё должно получиться в этом ВАШЕМ выражении?

Николай

Должно получиться -0,5 так как функция возвращает целые части чисел.

dimak222

Цитата: designer811 от 14.02.23, 10:47:30баг или фича.png
У коллеги на компьютере такое бывало, у меня не встречалось, лечилось перезагрузкой или выключением и включением компьютера.

Цитата: Николай от 15.02.23, 15:54:28Fix-это функция для отбрасывания дробной части при программировании.
В компасе нет функции Fix как округление (Рис. 1), она создастся как Fix(t) (Рис. 2). Но можно посчитать как округление через ROUND, CEIL и FLOOR. Жаль что нет округление до числа разрядов (либо есть, но не все функции описаны).

Цитата: Николай от 16.02.23, 11:24:16Должно получиться -0,5 так как функция возвращает целые части чисел.
Если судить по Вашей формулировке округления (цитата выше), то:
1. x = Fix(4.12345*1000) = 4123;
2. y = 4.12345*1000 = 4123,45;
3. x - y = 4123-4123,45 = -0,45.
+ Благодарностей: 1

Николай

Да, конечно. Тороплюсь. :) Говоря о том, что появляются числа с "бесконечно малым" отклонением от номинала, я имел в виду не программирование в Компасе, а те баги, которые появляются в программе, на которой написан сам код Компаса.

Вот и забугорные программисты сталкиваются с этим:(цитата из Интернета)

In VB6: MsgBox Fix(1.999999) Produces a msgbox showing the value 1. How can I do this in .NET Bearing in mind I have removed the sYSTEM.VisualBasic runtime reference. woof. ...

IgorT

Цитата: Николай от 16.02.23, 12:47:21... появляются числа с "бесконечно малым" отклонением от номинала ...
Обычное дело. За этим надо следить и поступать соответствующим образом.

Петрович-47

Цитата: dimak222 от 16.02.23, 12:16:50В компасе нет функции Fix...
вот и я про то же...