因为这次的课件我是从后往前看的,之前先看了最后的模线性方程,现在又回头看了前面的内容。
先看了一些常用的对数据处理的相关库函数。
int abs(int i) 返回整型参数i的绝对值
double cabs(struct complex znum) 返回复数znum的绝对值
double fabs(double x) 返回双精度参数x的绝对值
long labs(long n) 返回长整型参数n的绝对值
double ldexp(double value,int exp); 返回value*2^exp的值
double log(double X) 返回logeX的值,以e为底的对数
double log10(double x) 返回log10x的值,以10为底的对数
double pow(double x,double y) 返回x^y的值
double pow10(int p) 返回10^p的值
double sqrt(double x) 返回a,且a满足a*a=x,a>=0
double acos(double x) 返回x的反余弦cos^-1(x)值,x为弧度
double asin(double x) 返回x的反正弦sin^-1(x)值,x为弧度
double atan(double x) 返回x的反正切tan^-1(x)值,x为弧度
double atan2(double y,double x) 返回y/x的反正切tan^-1(x)值,y的x为弧度
double cos(double x) 返回x的余弦cos(x)值,x为弧度
double sin(double x) 返回x的正弦sin(x)值,x为弧度
double tan(double x) 返回x的正切tan(x)值,x为弧度
double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度
double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度
double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度
double hypot(double x,double y) 返回直角三角形斜边的长度(z),x和y为直角边的长度,z^2=x^2+y^2
double ceil(double x) 返回不小于x的最小整数
double floor(double x) 返回不大于x的最大整数
void srand(unsigned seed) 初始化随机数发生器
int rand() 产生一个随机数并返回这个数
double poly(double x,int n,double c[])从参数产生一个多项式
double modf(double value,double *iptr)将双精度数value分解成整数部分和小数部分,iptr为整数部分,返回小数部分
double fmod(double x,double y) 返回x/y的余数
然后就是几个数论函数:
欧拉函数:
通式: φ(1)=1(唯一和1互质的数(小于等于1)就是1本身)。其中p1, p2……pn为x的所有质因数,x是不为0的整数。
若n是质数p的k次幂,
,因为除了p的倍数外,其他数都跟n互质。
欧拉函数是积性函数——若m,n互质,
除法函数:
任何一个大于1的自然数,都可以唯一分解成有限个质数的乘积,这里均为质数其诸指数是正整数。
主要应用:
1 一个大于1的正整数N,如果它的标准分解式为:
,那么它的正因数个数为
同余:
两个整数a、b,若它们除以整数m所得的余数相等,则称a与b对于模m同余或a同余于b模m。记作 a≡b (mod m)
性质:
1 自反性 a≡a (mod m)
2 对称性 若a≡b(mod m),则b≡a (mod m)
3 传递性 若a≡b (mod m),b≡c (mod m),则a≡c (mod m)
4 设f(x)是系数全为整数的多项式,若a≡b(mod m),则f(a) ≡f(b)(mod m)
同余这部分上学期高代课中讲过,但是也忘得差不多了,自己又对照课本推了一遍,加深印象。