gmpy2
python 中gmpy2的用法的笔记
1.初始化高精度数据类型
1.a=gmpy2.mpz(x) 为变量a赋予高精度的整数(长度可达50位)
2.a=gmpy2.mpq(x) 可以为变量a初始化一个高精度的分数
3.a=gmpy2.mpfr(x) 可以为变量a初始化一个高精度的浮点数
4.a=gmpz2.mpc(x) 可以为变量a初始化一个高精度的复数
2.其他的常用语法
1.对模运算:gmpy2.powmod(a,n,p) #计算a^n mod p
2.对x开n次方根:gmpy.iroot(x,n)
3.欧几里得算法:gmpy2.gcd (a,b) #求最大公约数
gmpy2.lcm(a,b) #求最小公倍数
4.扩展欧几里得:gmpy2.gcdext(e1,e2) #求式子e1x+e2y=gcd(e1,e2) 在RSA算法中用该公式来求e的逆元d。
5.逆元运算:gmpy2.invert(a,c) #对a,求b,使a*b=1 mod c
6.检测
i.素数检测:gmpy2.is_prime()
ii.奇数检测:gmpy2.is_even()
iii.偶数检测:gmpy2.is_odd()
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Sani and Tuji!