Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.06.2009, 20:36   #21
basker2007
Пользователь
 
Регистрация: 03.06.2009
Сообщений: 16
По умолчанию

Мы писали прогу в универе - работа с большими числами. Там идёт работа со 128 битными. Исходник есть. Принцип: два массива по 64 бита образованы в один. Расчёты ведутся с побитовыми сдвигами(в лево в право). Если модернизируешь то будет и на 256 и на 512. Только там не всё. возведения в степень не понмю есть или нет. и реализована на C++.
Если надо то пиши в аську. она не скрыта на моей странице выложена.
basker2007 вне форума Ответить с цитированием
Старый 05.06.2009, 21:15   #22
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от BaronTreep Посмотреть сообщение
Maple вычислил 100.000! за 10 секунд, но боюсь что неправильно...
Mathcad просто отказывается.
Вот именно. Задайте Maple пару триллиардов. Думаете посчитает? Моему алгоритму пофигу - черепахи пусть медленно, но зато живут дольше всех. Иными словами, если Вам операционка даст память под такой факториал, он будет вычислен. Вот и вся теория чисел. Аналогично работает Vitовский алгоритм, потому как в строках помещается два миллиарда разрядов с абсолютной точностью.
512 знаков лажа, целые всегда будет приближениями по сравнению со строками.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 05.06.2009, 23:30   #23
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

Цитата:
Сообщение от BaronTreep Посмотреть сообщение
Maple вычислил 100.000! за 10 секунд, но боюсь что неправильно...
Mathcad просто отказывается.

А зачем вам вычислять эти самые факториалы, можно поинтересоваться?

Если нужны небольшие, то находите произведением, и сохраняйте ранее вычисленные в базе. Далее большие факториалы вычисляйте не полностью, а через ранее найденные.
По длинной арифметике сейчас припомню только практичную книжку:
Динман. "С++ примерах".
Wolfram Mathematica 7 вычислило 100 000! менее чем за 1-2 Сек
Alter вне форума Ответить с цитированием
Старый 05.06.2009, 23:37   #24
BaronTreep
Форумчанин
 
Регистрация: 29.05.2009
Сообщений: 320
По умолчанию

Цитата:
Wolfram Mathematica 7 вычислило 100 000! менее чем за 1-2 Сек
У меня старенький Maple, так что не удивляюсь. Плюс комп не из самых быстрых.
BaronTreep вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите отобразить тип LONG в DBMemo funball БД в Delphi 13 17.04.2009 11:46
Перевод десятичных чисел в тип Double Kuzya59 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 04.12.2008 15:41
Как прочитать 10 байтовый тип вещественных чисел The REAL Общие вопросы .NET 3 05.09.2008 10:46