Страница: 1 |
Страница: 1 |
Вопрос: вычисление больших чисел для VBA
Добавлено: 18.02.05 16:26
Автор вопроса: Alexey
Требуется вычислять факториалы больших чисел (5000!) в Excel. Кто-нибудь знает, как сделать это именно в VBA сообщите плззз. Суммц логарифмов вместо умножения уже сделал. Но все равно выше 1000! идет переполнение.
Спасибо заранее.
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 18.02.05 18:47
Нужно вычислять точно или ориентировочно? Если точно, тогда длинная арифметика (но 5000! должен считаться довольно долго), если можно неточно, тогда для n! суммируешь log10(1..n), получаешь s, в полученном выводе хранишь, а для вывода используешь форму (10^{s})*10^[s]
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 18.02.05 22:56
факториалы больших чисел, и в какую переменную ты будешь складывать результат? Думаю это практически невозможно, разве что организовать функции которая числа будет умножать столбиком, а ответ будет строковая переменная
Номер ответа: 3
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #3
Добавлено: 18.02.05 23:51
HACKER, есть такие вещи как lowPath, hiPath. Если число больше 2^32, его разбивают на части: младшую, старшую. Если не влазит - совсем старшую добавить можно. Итого до 2^96. И т.д.
Номер ответа: 4
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #4
Добавлено: 19.02.05 09:53