Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/16 - 16,9 = 0,89999999999999900000 - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
16 - 16,9 = 0,89999999999999900000
mikaelw Дата: Понедельник, 10.04.2023, 23:50 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 179
Репутация: 1 ±
Замечаний: 20% ±

Excel 2010, 2013, 2016
Доброго времени суток!

Как такое возможно 16 - 16,9 = 0,89999999999999900000

Я не пойму как такое возможно?
Как такое получилось?
К сообщению приложен файл: zadacha.xlsx (8.9 Kb)


Сообщение отредактировал Serge_007 - Вторник, 11.04.2023, 11:06
 
Ответить
СообщениеДоброго времени суток!

Как такое возможно 16 - 16,9 = 0,89999999999999900000

Я не пойму как такое возможно?
Как такое получилось?

Автор - mikaelw
Дата добавления - 10.04.2023 в 23:50
DrMini Дата: Вторник, 11.04.2023, 04:50 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1877
Репутация: 269 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
Как такое возможно

Все вычисления в Excel ведутся с 64-разрядными числами (8 байт), которые обеспечивают точность не более 16-17 знаков. Но из-за возможных проблем, связанных с округлением и накоплением ошибок в младших разрядах чисел точные расчеты с более чем 15 знаками невозможны. Поэтому Excel и ограничивает отображаемое числовое значение 15-ю знаками. Задав в числовом формате количество знаков, более 15, Вы получите те же 15 знаков с 0-ми в младших разрядах. Это и есть отображаемая точность представления. В этом легко убедиться, если ввести в какую-нибудь ячейку листа формулу, например,
Код
=1/3
задать в формате параметр "число десятичных знаков" равным, скажем, 20. Получите результат
Код
0,33333333333333300000
.
Для Вашего примера:

А тут всё правильно:
К сообщению приложен файл: 6630920.png (1.9 Kb) · 6511773.png (2.0 Kb)


Сообщение отредактировал DrMini - Вторник, 11.04.2023, 06:30
 
Ответить
Сообщение
Как такое возможно

Все вычисления в Excel ведутся с 64-разрядными числами (8 байт), которые обеспечивают точность не более 16-17 знаков. Но из-за возможных проблем, связанных с округлением и накоплением ошибок в младших разрядах чисел точные расчеты с более чем 15 знаками невозможны. Поэтому Excel и ограничивает отображаемое числовое значение 15-ю знаками. Задав в числовом формате количество знаков, более 15, Вы получите те же 15 знаков с 0-ми в младших разрядах. Это и есть отображаемая точность представления. В этом легко убедиться, если ввести в какую-нибудь ячейку листа формулу, например,
Код
=1/3
задать в формате параметр "число десятичных знаков" равным, скажем, 20. Получите результат
Код
0,33333333333333300000
.
Для Вашего примера:

А тут всё правильно:

Автор - DrMini
Дата добавления - 11.04.2023 в 04:50
прохожий2019 Дата: Вторник, 11.04.2023, 09:53 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 1298
Репутация: 327 ±
Замечаний: 0% ±

365 Beta Channel
как такое возможно?
IEEE 754
 
Ответить
Сообщение
как такое возможно?
IEEE 754

Автор - прохожий2019
Дата добавления - 11.04.2023 в 09:53
mikaelw Дата: Вторник, 11.04.2023, 11:02 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 179
Репутация: 1 ±
Замечаний: 20% ±

Excel 2010, 2013, 2016
И как с такой аномалией бороться?

Пример необычайно просто 16,9 - 16 = 0,9 (откуда в вычитании появляется еще 1на 10в -минус 15-ой)...

Задавать функцию ОКРУГЛ к любому вычислению ?


Сообщение отредактировал mikaelw - Вторник, 11.04.2023, 11:03
 
Ответить
СообщениеИ как с такой аномалией бороться?

Пример необычайно просто 16,9 - 16 = 0,9 (откуда в вычитании появляется еще 1на 10в -минус 15-ой)...

Задавать функцию ОКРУГЛ к любому вычислению ?

Автор - mikaelw
Дата добавления - 11.04.2023 в 11:02
DrMini Дата: Вторник, 11.04.2023, 11:34 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1877
Репутация: 269 ±
Замечаний: 0% ±

Excel LTSC 2024 RUS
И как с такой аномалией бороться?

Увеличить точность вычислений в EXCEL нельзя. Однако, если не предполагается участие чисел в математических операциях, то для их хранения можно использовать текстовый формат. Такое решение подходит, например, для хранения номеров банковских счетов.
Для перевода ячейки в текстовый формат достаточно поставить перед значением апостроф (') или перед вводом изменить формат ячейки ( CTRL+1 ) на Текстовый .
 
Ответить
Сообщение
И как с такой аномалией бороться?

Увеличить точность вычислений в EXCEL нельзя. Однако, если не предполагается участие чисел в математических операциях, то для их хранения можно использовать текстовый формат. Такое решение подходит, например, для хранения номеров банковских счетов.
Для перевода ячейки в текстовый формат достаточно поставить перед значением апостроф (') или перед вводом изменить формат ячейки ( CTRL+1 ) на Текстовый .

Автор - DrMini
Дата добавления - 11.04.2023 в 11:34
elovkov Дата: Вторник, 11.04.2023, 11:36 | Сообщение № 6
Группа: Друзья
Ранг: Обитатель
Сообщений: 413
Репутация: 73 ±
Замечаний: 0% ±

Excel 2013
Забавная штука, но суммирует эксель при этом адекватно
К сообщению приложен файл: 5405479.png (12.2 Kb)


Умное лицо это еще не признак ума. Все глупости на земле делаются именно с этим выражением лица
 
Ответить
СообщениеЗабавная штука, но суммирует эксель при этом адекватно

Автор - elovkov
Дата добавления - 11.04.2023 в 11:36
Alex_ST Дата: Вторник, 11.04.2023, 13:32 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Действительно, прикол.
При этом если в ячейку просто ввести 0,9, то сколько не увеличивай разрядность, после 0,9 так и будут нули.
А вот если =18,9-16, то при 15 знаках после запятой 0,900000000000000 превращается в 0,899999999999999
А если ещё больше знаков запросить, то опять нули лезут 0,899999999999999000000000



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеДействительно, прикол.
При этом если в ячейку просто ввести 0,9, то сколько не увеличивай разрядность, после 0,9 так и будут нули.
А вот если =18,9-16, то при 15 знаках после запятой 0,900000000000000 превращается в 0,899999999999999
А если ещё больше знаков запросить, то опять нули лезут 0,899999999999999000000000

Автор - Alex_ST
Дата добавления - 11.04.2023 в 13:32
mikaelw Дата: Вторник, 11.04.2023, 13:59 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 179
Репутация: 1 ±
Замечаний: 20% ±

Excel 2010, 2013, 2016
если не предполагается участие чисел в математических операциях

У меня эта фигня пошла именно через вычисления.

Сводной таблицей начал сводить данные, и выдало этот "перл".

Решил вопрос(как написано в интернете) и добавил просто Округл.
 
Ответить
Сообщение
если не предполагается участие чисел в математических операциях

У меня эта фигня пошла именно через вычисления.

Сводной таблицей начал сводить данные, и выдало этот "перл".

Решил вопрос(как написано в интернете) и добавил просто Округл.

Автор - mikaelw
Дата добавления - 11.04.2023 в 13:59
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!