Пропала вера в Excel (неверные расчеты) #664456


#0 by timurhv
Сегодня бухи одолели с одной ошибкой Excel при расчете: = 7868427065,61 - 8559740263,35. У вычисляемой ячейки установить формат числовой с 6 и более десятичными знаками, то результат будет -691313197,740001. Притом если к результату прибавить 691313197,74, то будет 0. Откуда единичка на конце взялась? Бухи все валили на 1С, т.к. сохраняли сформированный отчет, еле переубедил)))
#1 by Ковычки
по тому, что все числа в формулах, а не самостоятельные
#2 by Лодырь
эксель проводит все вычисления в числах с плавающей точкой. округление используется лишь для отображения а не вычисления.
#3 by Лефмихалыч
в настройках где-то есть галка "Точность, как на экране", которая с этой балдой справляется
#4 by Лефмихалыч
+ а вообще правильный ответ 1сника: "Ваш эксель, сами с ним и сношайтесь"
#5 by timurhv
Галочка не помогает :(
#6 by megabax
4, правильный ответ: это не проблема 1С, обратитесь к системному администратору.
#7 by HeroShima
если не указано в формуле явно
#8 by bse
+100500
#9 by vinogradъ
Да, интересно, в Libre тоже единичка появляется
#10 by Злопчинский
дай демофайл, проверю на кингофисе
#11 by vinogradъ
просто в ячейке посчитай 7868427065,61 - 8559740263,35
#12 by Иде я?
а еще ексель коряво вставляет данные из SQL Management studio  - иногда десяток строк в одну ячейку запихивает
#14 by vinogradъ
мастер импорта тебе поможет, или через текстовый редактор вставляй
#17 by Злопчинский
#18 by NS
Жесть! Не все программисты оказывается знают что такое "число с плавающей запятой"
#19 by Asmody
это проделки Дьявола! У вас компьютеры освященные?
#20 by Фёдор14
Прописывай округления в формулах
#21 by NS
Нафига? Округление ничего не изменит.
#22 by Академик_Келдыш
Правильный ответ: купили офис за 200 баксов? Где купили туда и идите!!!
#23 by Академик_Келдыш
А вообще фирма миллиардера сделала прогу, которая и поллярда посчитать без ошибки не может.
#24 by Академик_Келдыш
Кстати помню как то на процессорах амд калькулятор выдавал другой результат нежели на интеле
#25 by timurhv
Не так, в гугле такая же фигня. Сделали компьютеры, точнее которых порой любой школьник посчитает)))
#26 by ptrtss
Это числа с плавающей точкой Дело в том, что здесь у тебя одновременно и сравнительно много знаков после запятой и до. Флоут так не работает. При числах вроде 10000000000000000000.000000000000000001 еще хуже чудеса будут
#27 by ptrtss
Пример: 100000000000000 + 0.1 = 0
#28 by kosts
Наверное хотел сказать 100000000000000 + 0.1 = 100000000000000
#29 by ЧеловекДуши
У меня тоже нормально посчитал, ексель :) = 7868427065,61 - 8559740263,35 = -691 313 197,74р. Господа, что за чушь вы порете по поводу екселя? Научите своих толстушек выставлять Финансовый формат у ячеек :)
#30 by ЧеловекДуши
-691313197,74 - Результат расчета на калькуляторе :) Ибо все ровно бухи работают только с рублями, где только два знака после запятой. А как там внутри считает ексель, так это никого не волнует. Все ровно 1 - 2 копейки в любом случае зависнут, где-нибудь :)
#31 by Ageres
А то, что 0,61 - 0,35 = -0,26, тебя не смущает?
#32 by Ageres
Сам перегрелся, правильно все :)
#33 by Черт
с математикой видать туго :D
#34 by ptrtss
>> Наверное хотел сказать 100000000000000 + 0.1 = 100000000000000 Ну да, конечно
#35 by ptrtss
Еще жестче прикол: 1000000000000000 + 1 = 1000000000000000
#36 by Alexor
Уже не помню, в физике или математике: результат не может быть точнее чисел в формуле. Нас в институте за формулу = 7868427065,61 - 8559740263,35 =-691313197,740000 Сразу оценку снижали.
#37 by NikVars
#38 by 360i
Excel сохраняет числа и проводит вычисления с точность до 15 цифр. попробуй ввести число 123456789012345678 получишь на экране чи 122456789012345000 Он даже округлять не будет. Заменит три последние цифры на нули и все.
#39 by CaMoJleT
#40 by пипец
скажу более разные модели калькулятора цитизен - считают с разным округдением одни и те же формулы
#41 by NS
Эксель вычисляет в двоичном формате. (64 битное число по стандарту IEEE 754) Это примерно 15 десятичных знаков, а не 15 десятичных знаков. Единица в 15-ом разряде лишняя у него может выскочить при любых операциях (даже если операнды достаточно короткие), как и практически в любой другой системе.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С