Форум программистов, компьютерный форум, киберфорум
Наши страницы
Комментарии
Войти
Регистрация
Восстановить пароль
  1. Старый комментарий
    Сравнение чисел с плавающей точкой
    Цитата:
    Сообщение от Orsanka Просмотреть комментарий
    а = 0.1;
    b = 872782577.12544;
    c = 10.0;

    Ожидаешь, что a * b * c будет равно b
    и даже в голову не приходит по началу, где здесь может быть ошибка.
    Вы тысячу раз правы. Если предположить, что число а задано приближенно с абсолютной погрешностью 0,05, то результат умножения будет ошеломителен: 900 000 000. Ведь относительная погрешность первого числа равна 50% (число находится на интервале (0,05; 0,15)). Другими словами, даже первая цифра результата сомнительна.
    Запись от нтч размещена 12.01.2019 в 08:35 нтч вне форума
  2. Старый комментарий
    Сравнение чисел с плавающей точкой
    Цитата:
    Сообщение от нтч Просмотреть комментарий
    Это верно для любого языка программирования. Мало того, даже вычисления на бумаге с помощью шариковой ручки подчиняются этому правилу.
    Да, все верно. Но когда пишешь ручкой на бумаге, обычно это десятичная система счисления, где человеку сразу видны места, в которых будет ошибка округления и ее можно увидеть и учесть.
    А когда пишешь
    а = 0.1;
    b = 872782577.12544;
    c = 10.0;

    Ожидаешь, что
    a * b * c будет равно b

    и даже в голову не приходит по началу, где здесь может быть ошибка.
    Запись от Orsanka размещена 11.01.2019 в 10:07 Orsanka вне форума
  3. Старый комментарий
    Сравнение чисел с плавающей точкой
    Это верно для любого языка программирования. Мало того, даже вычисления на бумаге с помощью шариковой ручки подчиняются этому правилу.
    Запись от нтч размещена 11.01.2019 в 09:46 нтч вне форума
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru