Перейти к содержанию

Вопросы

ss.png.d4d24ea133273e65d57f18a442d4c2df.png

У всех не целых чисел вылезают левые значение.

Подскажите пожалуйся как это победить?

Delphi 10.3 Version 26.0.36039.7899

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

Никак. Читайте что такое числа с плавающей точкой.
1 правило работы с плавающей точкой: Нельзя проверять 2 числа на равенство оператором =
нельзя:

const dx:double=143.201;
const sx:single=143.201;
begin
  assert(dx=sx);
end;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
В 28.04.2020 в 06:20, Slym сказал:

1 правило работы с плавающей точкой: Нельзя проверять 2 числа на равенство оператором =
нельзя

От себя добавлю - для сравнения есть чудесная функция System.Math.CompareValue

Ещё гляньте System.Math.Vectors.TEpsilon - там есть полезные константы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...