Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
IgorSer
0 / 0 / 0
Регистрация: 18.01.2013
Сообщений: 103
#1

Длинная арифметика. Факториал - C++

15.02.2014, 22:12. Просмотров 693. Ответов 5
Метки нет (Все метки)

Придумать алгоритм факториала, не сложно, для 1-14. Но дальше не знаю как сделать длинную арифметику для больших чисел. Подскажите пожалуйста как можно такое реализовать на Си(Си++)?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.02.2014, 22:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Длинная арифметика. Факториал (C++):

Факториал (Длинная арифметика) - C++
Требуется вычислить факториал целого числа N. Входные данные В единственной строке входного файла INPUT.TXT записано одно целое...

Длинная арифметика. Факториал 1 <= n <= 10000 - C++
Добрый вечер. Подскажите, пожалуйста, возможно ли написать длинную арифметику для вычисления факториала до 10000 включительно на C++ без...

Длинная арифметика)) - C++
Программка уже почти готова, единственное неправильно находит остаток при делении По заданию: Надо ввести 2-ва целых числа неогран....

Длинная арифметика - C++
Мне дали задание с вычеслениями длинной арифметики. С мысл в том что там все действия происходят с символьными масивами. Я так и не...

Длинная арифметика - C++
Поодскажите какую-нибудь библиотеку, где реализована работа со знаковыми целыми числами произвольной длины.

Длинная арифметика - C++
http://www.********/index.asp?main=task&amp;id_task=103 Как решить эту задачу? С помощью чего, и в чем смысл решения длянной...

5
casper007
67 / 67 / 22
Регистрация: 12.12.2013
Сообщений: 400
15.02.2014, 22:19 #2
Цитата Сообщение от IgorSer Посмотреть сообщение
Подскажите пожалуйста как можно такое реализовать на Си(Си++)?
Если тебе нужна работа с более длинными числами - приходится их моделировать в ввиде массива примитивных типов. И реализовывать нужные тебе операции с этим массивом.
есть готовые библиотеки, например https://gmplib.org/
0
tim289
4 / 4 / 2
Регистрация: 15.02.2014
Сообщений: 25
16.02.2014, 02:35 #3
если ты хочешь работать с большими числами(если я правильно понял вопрос) то используй тип "unsigned long long" или "long dobule". должно этого хватить)

Добавлено через 9 минут
и вообще почитай, будет полезным http://www.cyberforum.ru/blogs/18334/blog69.html
0
-=ЮрА=-
Заблокирован
Автор FAQ
16.02.2014, 02:46 #4
IgorSer, советую читать только нужную теорию а именно - Эффективную формулу для определения факториала
Во многих случаях для приближённого значения факториала достаточно рассматривать только главный член формулы Стирлинга:
http://ru.wikipedia.org/wiki/%D0%A4%...B8%D0%B0%D0%BB

Решение многих задач в лоб попросту либо невозможно либо связанно с очень большими затратами процессорного времени.
Если же вопрос касался какой тип подойдёт для вычисления факториала - да возьми простой дабл думаю до 1000! хватит
0
IgorSer
0 / 0 / 0
Регистрация: 18.01.2013
Сообщений: 103
16.02.2014, 16:09  [ТС] #5
Дело в том, что мб нужно будет очень большие числа считать, т.е. long, unsigned не помогут.
Действительно, нужно преобразовывать числа в массив, и проделать нужною операцию, но не знаю как.
0
DiffEreD
1431 / 768 / 95
Регистрация: 21.06.2011
Сообщений: 1,740
Записей в блоге: 2
16.02.2014, 17:27 #6
Или использовать Boost: multiprecision
0
16.02.2014, 17:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.02.2014, 17:27
Привет! Вот еще темы с ответами:

Длинная арифметика - C++
Длинная арифметика — это набор программных средств (структуры данных и алгоритмы), которые позволяют работать с числами гораздо больших...

Длинная арифметика - C++
Вот условие задачи: Во время исследований, посвященных появлению жизни на планете Олимпия, учеными было сделано несколько сенсационных...

Длинная арифметика - C++
class BigInt { static const int max_size = 100000;//количество десятичных разрядов, которые должно вмещать static...

Длинная арифметика - C++
Как сделать типы длинных чисел, например, знаковое 256-ти битное целое и 256-ти битное вещественное с 224-х битной мантиссой и 32-х битным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru