Страницы: 1
RSS
Сравнение значения ячейки с её отображаемым значением даёт ЛОЖЬ
 
Добрый день,

Непонятное от Экселя, прошу подсказать почему A4 отображает ЛОЖЬ?

Код
A1: 70,02
B2: 70,01
B1: 0,01

A4: =(A1-A2)/B1
A5: =A4=1


 
0,999999999999091
вот что в А4
Это https://en.wikipedia.org/wiki/IEEE_754
Чтоб высчитать до копеечки нужно всё промежуточное округлять до копеечки...
Изменено: Hugo - 12.12.2024 23:34:11
 
попробуйте делимое вычислить в строке формул отдельно - выделите и нажмите F9  )
 
Цитата
nilske написал:
попробуйте делимое вычислить в строке формул отдельно - выделите и нажмите F9  )

Прописываю в ячейке =A1-A2. Затем выделяю эту ячейку и нажимаю F9. Ничего не происходит. У меня Excel для MAC если что


В A5 стоит формула, которая проверяет ячейку A4 и если ее значение =1, то она потом выдает ошибку.

Как тогда правильно прописать сравнение в A4 ?
 
Verticalx, выше тоже почитайте...
 
Verticalx, Не нужно писать через строку - плохо читается
Цитата
Verticalx написал:
У меня Excel для MAC если что
для счастливчиков есть отдельная ветка. Перенесено
Согласие есть продукт при полном непротивлении сторон
 
Цитата
Sanja написал:
для счастливчиков есть отдельная ветка. Перенесено

Вопрос про общую проблему экселя с округлением. Эксель для мак тут не причем.
Эта отдельная ветка абсолютна неликвидна. Не говоря о том, что проблема не привязана к платформе
Изменено: Verticalx - 13.12.2024 10:15:54
 
Цитата
Hugo написал:
Verticalx , выше тоже почитайте...

Да, я понял что это та самая проблема с округлением. Просто теперь непонятно что с этим со всем делать :cry:
 
а почему не хотите округлять промежуточные или итоговый результаты, как выше подсказали?
либо в самом сравнении, хоть до одиннадцати зпз в данном случае  )
=ОКРУГЛ(A4;11)=1
Изменено: nilske - 13.12.2024 10:33:08
 
Цитата
Verticalx написал:
Не говоря о том, что проблема не привязана к платформе
Ну Вы же для чего-то акцентировали на этом
Согласие есть продукт при полном непротивлении сторон
 
Цитата
nilske написал:
а почему не хотите округлять промежуточные или итоговый результаты, как выше подсказали?либо в самом сравнении, хоть до одиннадцати зпз в данном случае  )=ОКРУГЛ(A4;11)=1

Так я за округление, наоборот, тем более тут других выходов-то и нет. Так и буду делать.
Дело в том, что нужно знать когда там действительно строго единица в частном. А если при делении вдруг будет 0,999999999999091, которое потом будет округлено до единицы, то получиться, что расчет/сравнение было неверным. Хотя такое маловероятно, конечно, но и палка раз в год стреляет
Изменено: Verticalx - 13.12.2024 12:34:21
 
Тип данных Double он такой.  Проблема, когда пытаешься отфильтровать по столбцу со значениями с запятой. Проблема не Excel, а в целом двоичной системы счисления. Только задавать требуемую точность знаками после запятой.
 
Цитата
Sanja написал:
Ну Вы же для чего-то акцентировали на этом

Мне предложили попробовать:

Цитата
nilske написал:
попробуйте делимое вычислить в строке формул отдельно - выделите и нажмите F9  )

Я попробовал, но при нажатии F9 ничего не произошло. Часто бывает, что клавиши или сочетания клавиш на Win не работают на Mac, либо в маке для них другие сочетания. Поэтому я написал что у меня эксель для MAC, подразумевая что это может быть причиной того, что F9 не сработал:

Цитата
Verticalx написал:
Прописываю в ячейке =A1-A2. Затем выделяю эту ячейку и нажимаю F9. Ничего не происходит. У меня Excel для MAC если что

Это частность, к проблеме этой темы не имеющая отношения.
 
Цитата
Artur B. написал:
Проблема не Excel, а в целом двоичной системы счисления.

Да, оно самое(

Цитата
Artur B. написал:
Только задавать требуемую точность знаками после запятой.

Будем как-то пробовать, других вариантов, похоже нет..
Страницы: 1
Наверх