|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.01.2010, 16:51 | #1 |
Заблокирован
Регистрация: 02.12.2009
Сообщений: 15
|
Я в шоке, как VBA складывает
Здравствуйте,
Заметил и проверил такую вещь, что например при сложении большого и малого числа, отбрасывается дробная часть. Например: 1e10+1e-10=1e10, В моем макросе это очень важно, скажите какие переменные можно еще использовать? |
09.01.2010, 16:57 | #2 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Не знаю насчет VB, но обычно компьютер хранит число так:
ЗНАК_ЧИСЛО_СТЕПЕНЬ Причем количество разрядов ограничено Скорее всего ваше число настолько растягивается, что степень не может отобразить 20 разрядов. P.S. Если что напутал, ногами не бить. Теорию в последний раз смотрел год назад.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
09.01.2010, 17:09 | #3 | |
Заблокирован
Регистрация: 02.12.2009
Сообщений: 15
|
Цитата:
|
|
09.01.2010, 17:19 | #4 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Чем больше число (степень) до запятой тем мень число (степень) после запятой. После некоторой грани сначала пропадают значения после запятой, потом первые разряды обнуляются... Так что у Вас похоже число со слишком большой степенью.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
09.01.2010, 22:06 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
выходите из шока почитайте в инете "представление действительных чисел в памяти ЭВМ" или нечто подобное - все подробно расписано для паскаля, бейсика, С++ и пр.
Задача вычислить милльярдный знак в числе Пи - очень не простая для компьютера и требует специального алгоритма, а не способа хранения (правильного выбора типа данных). Если хранить все знаки числа Пи не хватит всей памяти всех компьютеров мира. Это только Чак Норис смог досчитать до бесконечности (два раза). Успехов!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
10.01.2010, 01:21 | #6 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Если числа только целые, то могут помочь разные библиотеки для работы с числами произвольной длины типа BigInteger.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Я в шоке: Гугл проверяет наши письма | Levsha100 | Свободное общение | 29 | 13.01.2010 15:45 |
Как удалять Модули в VBA? | segail | Microsoft Office Excel | 1 | 18.06.2009 06:11 |
Комендантский час!!! Что к народному бунту готовимся, к войне, я в шоке от последних новостей | Alar | Свободное общение | 141 | 03.05.2009 19:41 |
Borland C++Builder почему он не складывает коды символов тут? | BattleMage | C++ Builder | 1 | 29.09.2007 08:56 |