Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
gmp library это Gnu Multi-Precision Library 16.12.04 12:43 Число просмотров: 6808
Автор: amirul <Serge> Статус: The Elderman
|
> Благодарю за обьяснение, но что такое gmp и как им > пользоваться. у меня нет МSDN, поэтому плз по подробнее. и > на мыло шлите всё что есть hotice@land.ru Библиотека для работы с числами произвольной длины, входящая в проект GNU.
Микрософт не имеет к этой библиотеке ни малейшего отношения, поэтому в MSDN-е о ней ни слова нет.
Документацию можно найти здесь: http://www.swox.com/gmp/manual/ (также есть офлайновые варианты в pdf, dvi и ps).
В частности, насколько я понял нужны следующие функции:
http://www.swox.com/gmp/manual/Integer-Arithmetic.html#Integer%20Arithmetic
http://www.swox.com/gmp/manual/Integer-Division.html#Integer%20Division
http://www.swox.com/gmp/manual/Integer-Exponentiation.html#Integer%20Exponentiation
Также есть C++ интерфейс к библиотеке, который позволяет работать с библиотекой например так:
int
main (void)
{
mpz_class a, b, c;
a = 1234;
b = "-56724572457254678";
c = a+b;
cout << "sum is " << c << "\n";
cout << "absolute value is " << abs(c) << "\n";
return 0;
}
---
При желании можно посмотреть на алгоритмы, использующиеся для умножения/деления/возведения в степень:
http://www.swox.com/gmp/manual/Multiplication-Algorithms.html#Multiplication%20Algorithms
http://www.swox.com/gmp/manual/Division-Algorithms.html#Division%20Algorithms
http://www.swox.com/gmp/manual/Powering-Algorithms.html#Powering%20Algorithms
и подумать, в состоянии ли Вы реализовать их. А если еще учесть, что под каждую платформу, на которую портирован gmp есть оптимизированная ассемблерная реализация, то вопрос о том писать или не писать собственную реализацию снимается
|
|
|