به گزارش بنیاد تبریکس ورژن جدید gmp ریلیز شد .
در Thu, 07 Feb 2013 20:53:33 نسخه GMP 5.1.0 ریلیز شد .
حال GMP چیست ؟
GMP کتابخانه رایگان برای برنامه های شما با دقت دلخواه است، عاملی بر روی اعداد صحیح امضا شده، اعداد گویا، اعداد ممیز شناور است.
هدف اصلی این برنامه ایجاد برنامه کاربردی برای رمزنگاری و تحقیقات، اینترنت، برنامه های امنیتی، سیستم های جبر، تحقیق جبر محاسباتی، و غیره است . gmp برنامه ای برای ضرب و محاسبه اعداد بزرگ است . این برنامه با مجوز lgpl ارایه میشود . برای اطلاعات بیشتر میتوانید به سایت http://gmplib.org تشریف ببرید .
برای دانلود این برنامه میتوانید از لینک های زیر استفاده کنید :
ftp://ftp.gnu.org/gnu/gmp/gmp-5.1.0a.tar.xz
ftp://ftp.gnu.org/gnu/gmp/gmp-5.1.0a.tar.bz2
ftp://ftp.gmplib.org/pub/gmp-5.1.0/gmp-5.1.0a.tar.xz
ftp://ftp.gmplib.org/pub/gmp-5.1.0/gmp-5.1.0a.tar.bz2
برای نمونه ما در این کد ساده از این برنامه استفاده میکنیم :
Here is an example of C code showing the use of the GMP library to multiply and print large numbers:
#include#include #include int main(void) { mpz_t x; mpz_t y; mpz_t result; mpz_init(x); mpz_init(y); mpz_init(result); mpz_set_str(x, "7612058254738945", 10); mpz_set_str(y, "9263591128439081", 10); mpz_mul(result, x, y); gmp_printf("\\n %Zd\\n*\\n %Zd\\n--------------------\\n%Zd\\n\\n", x, y, result); /* free used memory */ mpz_clear(x); mpz_clear(y); mpz_clear(result); return EXIT_SUCCESS; }
This code calculates the value of 7612058254738945 × 9263591128439081.
Compiling and running this program gives this result. (The -lgmp flag is used if compiling on Unix-type systems.)
7612058254738945 * 9263591128439081 -------------------- 70514995317761165008628990709545
For simplicity, one can write instead the following equivalent C++ program. (The -lgmpxx -lgmp flags are used if compiling on Unix-type systems.)
#include#include int main() { mpz_class x("7612058254738945"); mpz_class y("9263591128439081"); std::cout << "\\n " << x << "\\n*\\n " << y; std::cout << "\\n--------------------\\n" << x * y << "\\n\\n"; }
[]