【CINTA06】CINTA第六次作业

【CINTA06】CINTA第六次作业

题1

运用 C R T 求解: x ≡ 8 ( m o d 11 ) x ≡ 3 ( m o d 19 ) 运用 CRT 求 解: x ≡ 8 (mod 11) x ≡ 3 (mod 19) 运用CRT求解:x8(mod11)x3(mod19)

解: a = 8 , p = 11 , b = 3 , q = 19 , n = p q = 209 p − 1 = 7 , q − 1 = 7 x = ( a q q − 1 + b p p − 1 ) m o d n = 41 解: a=8,p=11,b=3,q=19,n=pq=209\\ p^-1^=7,q^-1^=7\\ x=(aqq^-1^+bpp^-1^)modn=41 解:a=8,p=11,b=3,q=19,n=pq=209p1=7,q1=7x=(aqq1+bpp1)modn=41

题2

运用 C R T 求解: x ≡ 1 ( m o d 5 ) x ≡ 2 ( m o d 7 ) x ≡ 3 ( m o d 9 ) x ≡ 4 ( m o d 11 ) 运用 CRT 求解: x ≡ 1 (mod 5) x ≡ 2 (mod 7) x ≡ 3 (mod 9) x ≡ 4 (mod 11) 运用CRT求解:x1(mod5)x2(mod7)x3(mod9)x4(mod11)

解: M = 5 ∗ 7 ∗ 9 ∗ 11 = 3465 记 b   0   = M / 5 = 693 , b   1   = M / 7 = 495 , b   2   = M / 9 = 385 , b   3   = M / 11 = 315 b   i   b   i   − 1 = 1 m o d m i b   0   − 1 = 2 , b   1   − 1 = 3 , b   2   − 1 = 4 , b   3   − 1 = 8 x = ∑ a   i   b   i   b   i   − 1 m o d M = 1731 解: M=5*7*9*11=3465\\ 记b~0~=M/5=693,b~1~=M/7=495,b~2~=M/9=385,b~3~=M/11=315\\ b~i~b~i~^-1^=1mod\quad m_i\\ b~0~^-1^=2,b~1~^-1^=3,b~2~^-1^=4,b~3~^-1^=8\\ x=∑a~i~b~i~b~i~^-1^modM=1731 解:M=57911=3465b 0 =M/5=693b 1 =M/7=495b 2 =M/9=385b 3 =M/11=315b i b i 1=1modmib 0 1=2,b 1 1=3b 2 1=4b 3 1=8x=a i b i b i 1modM=1731

题3

手动计算 20002019 ( m o d 221 ) ,不允许使用电脑或者其他电子设备。 [ 提示:这是一道看上去与中国剩余定理无关的计算题。 ] 手动计算 20002019 (mod 221),不允许使用电脑或者其他电子设备。[提示:这是一 道看上去与中国剩余定理无关的计算题。] 手动计算20002019(mod221),不允许使用电脑或者其他电子设备。[提示:这是一道看上去与中国剩余定理无关的计算题。]

解: 221 = 13 ∗ 1720002019 《 = 》( 11 , 7 ) x = 11 m o d 13 , x = 7 m o d 17 a = 11 , p = 13 , b = 7 , q = 17 p − 1 = 4 , q − 1 = 10 x = ( a q q − 1 + b p p − 1 ) m o d 221 = 2420002019 ( m o d 221 ) = 24 解: 221=13*17 20002019《=》(11,7) x=11mod13,x=7mod17 a=11,p=13,b=7,q=17 p^-1^=4,q^-1^=10 x=(aqq^-1^+bpp^-1^)mod221=24 20002019 (mod 221)=24 解:221=131720002019=》(117x=11mod13,x=7mod17a=11,p=13,b=7,q=17p1=4,q1=10x=(aqq1+bpp1)mod221=2420002019(mod221)=24

题7

实现一个利用 C R T 求解同余方程的程序( P y t h o n 或者 C 语言都可以 实现一个利用 CRT 求解同余方程的程序(Python 或者 C 语言都可以 实现一个利用CRT求解同余方程的程序(Python或者C语言都可以

求逆元思路:由费马小定理可知: p q − 1 = 1 m o d q p q − 2 = p − 1 m o d q p − 1 = p q − 2 m o d q 求逆元思路: 由费马小定理可知: p^q-1^=1modq p^q-2^=p^-1^modq p^-1^=p^q-2^modq 求逆元思路:由费马小定理可知:pq1=1modqpq2=p1modqp1=pq2modq

#include<iostream>
using namespace std;

int inversion(int x, int y)
{
	int a = 1;
	if (y == 2)
	{
		if (x % 2 != 0)
			return a;
	}
	for (int i = 0; i <y-2 ; i++)
	{
		a = a * x % y;
	}
	return a;
}

int CRT(int a,int p,int b,int q)
{
	int s = inversion(p, q);
	int r = inversion(q, p);
	int x = a * q * r + b * p * s;
	x = x % (p * q);
	return x;
}


int main()
{
	int a, p, b, q;
	cout << "请输入a,p,b,q(p,q互素):" << endl;
	cin >> a >> p >> b >> q;
	int x = CRT(a, p, b, q);
	cout << "求得:";
	cout << x << endl;
}
  • 19
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值