欢迎来到天天文库
浏览记录
ID:18514535
大小:54.00 KB
页数:8页
时间:2018-09-18
《基于扩展欧几里得算法的多项式互素》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、这个程序实现对以个多项式的各种操作,包括:从控制台读入多项式,检查多项式的合法性,多项式的存储与输出显示,多项式的加法,减法,乘法,除法。完成多项式技术后,将其运用到多项式的扩展欧几里得算法中,实现对两个多项式寻找到使u(x)f(x)+v(x)g(x)=1成立的v(x),u(x);以下是多项式程序。#includeusingnamespacestd;#defineMaxDXS200structDXS{intn;doublexi[MaxDXS+1];};intmax(inta,intb){if(a>b)returna;returnb;}intcheck(DX
2、S&a){while(a.n>0&&a.xi[a.n]==0)a.n--;return0;}intshow(DXSa)//findaprobleminshow;{if(a.xi[a.n]==1){if(a.n==0)cout<<1;}elseif(a.xi[a.n]==-1)cout<<"-";elsecout<1)cout<<"X^"<=0;i--){if(a.xi[i]>0){if(a.xi[i]!=1)cout<<'+'<3、(i==0)cout<<"+1";elsecout<<'+';if(i>1)cout<<"X^"<1)cout<<"X^"<>s;charlst='[';doublexi=0;intzhi=0;4、inti=0;intlen=strlen(s);s[len]='+',s[len+1]=' ';while(s[i]!=' '){if(s[i]>='0'&&s[i]<='9'){doublenum=0,dotcnt=1;boolisdot=false;while(s[i]>='0'&&s[i]<='9'5、6、s[i]=='.'){if(s[i]=='.'){if(isdot){cout<<"小数点输入错误!"<7、+(s[i]-'0');}num=num*dotcnt;i++;}if(lst=='+'8、9、lst=='[')xi=num;//xielseif(lst=='-'10、11、lst=='[')xi=-num;//-xielseif(lst=='^')//zhi{if(isdot){cout<<"多项式的指数必须是正整数!"<=100){cout<<"你的多项式输入次数太大了!"<12、}elseif(s[i]=='x'13、14、s[i]=='X'){if(lst=='+'15、16、lst=='[')xi=1;elseif(lst=='-')xi=-1;elseif(lst>='0'&&lst<='9'){}else{cout<<"你的输入有误!"<17、18、lst=='X'){}else{cout<<"输入出错!"<19、20、s[i]=='-'){if(lst>='0'&&lst<='9'21、22、lst=='['23、24、25、lst=='x'26、27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'28、29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
3、(i==0)cout<<"+1";elsecout<<'+';if(i>1)cout<<"X^"<1)cout<<"X^"<>s;charlst='[';doublexi=0;intzhi=0;
4、inti=0;intlen=strlen(s);s[len]='+',s[len+1]=' ';while(s[i]!=' '){if(s[i]>='0'&&s[i]<='9'){doublenum=0,dotcnt=1;boolisdot=false;while(s[i]>='0'&&s[i]<='9'
5、
6、s[i]=='.'){if(s[i]=='.'){if(isdot){cout<<"小数点输入错误!"<7、+(s[i]-'0');}num=num*dotcnt;i++;}if(lst=='+'8、9、lst=='[')xi=num;//xielseif(lst=='-'10、11、lst=='[')xi=-num;//-xielseif(lst=='^')//zhi{if(isdot){cout<<"多项式的指数必须是正整数!"<=100){cout<<"你的多项式输入次数太大了!"<12、}elseif(s[i]=='x'13、14、s[i]=='X'){if(lst=='+'15、16、lst=='[')xi=1;elseif(lst=='-')xi=-1;elseif(lst>='0'&&lst<='9'){}else{cout<<"你的输入有误!"<17、18、lst=='X'){}else{cout<<"输入出错!"<19、20、s[i]=='-'){if(lst>='0'&&lst<='9'21、22、lst=='['23、24、25、lst=='x'26、27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'28、29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
7、+(s[i]-'0');}num=num*dotcnt;i++;}if(lst=='+'
8、
9、lst=='[')xi=num;//xielseif(lst=='-'
10、
11、lst=='[')xi=-num;//-xielseif(lst=='^')//zhi{if(isdot){cout<<"多项式的指数必须是正整数!"<=100){cout<<"你的多项式输入次数太大了!"<12、}elseif(s[i]=='x'13、14、s[i]=='X'){if(lst=='+'15、16、lst=='[')xi=1;elseif(lst=='-')xi=-1;elseif(lst>='0'&&lst<='9'){}else{cout<<"你的输入有误!"<17、18、lst=='X'){}else{cout<<"输入出错!"<19、20、s[i]=='-'){if(lst>='0'&&lst<='9'21、22、lst=='['23、24、25、lst=='x'26、27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'28、29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
12、}elseif(s[i]=='x'
13、
14、s[i]=='X'){if(lst=='+'
15、
16、lst=='[')xi=1;elseif(lst=='-')xi=-1;elseif(lst>='0'&&lst<='9'){}else{cout<<"你的输入有误!"<17、18、lst=='X'){}else{cout<<"输入出错!"<19、20、s[i]=='-'){if(lst>='0'&&lst<='9'21、22、lst=='['23、24、25、lst=='x'26、27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'28、29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
17、
18、lst=='X'){}else{cout<<"输入出错!"<19、20、s[i]=='-'){if(lst>='0'&&lst<='9'21、22、lst=='['23、24、25、lst=='x'26、27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'28、29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
19、
20、s[i]=='-'){if(lst>='0'&&lst<='9'
21、
22、lst=='['
23、
24、
25、lst=='x'
26、
27、lst=='X'){if(lst>='0'&&lst<='9'){tmp.xi[zhi]+=xi;}elseif(lst=='x'
28、
29、lst=='X'){zhi=1;tmp.xi[zhi]+=xi;}tmp.n=max(tmp.n,zhi);}else{cout<<"你的输入有问题!"<
此文档下载收益归作者所有