📄 group23.java
字号:
import java.io.*;
public class group23
{
private class newpoint
{
int dight;
int times;
boolean flag;
}
int count_aa =0;
int count_bb=0;
newpoint[] aa= new newpoint[5];
newpoint[] bb = new newpoint[5];
newpoint[] sum = new newpoint[5];
public static void main(String agrs[])
{
System.out.println("警告本程序只提供5个项输入");
group23 getnow= new group23();
//getnow.getnumber();
getnow.getsum();
}
public void getnumber()
{
//本函数是为了始化数据
//根据INPUTSTREAMREADER的特点,本实验接受数据只能先输入系数ENTER后再输入次数
int a4=0;
int b4=0;
String accpetdight="";
String accpettimes="";
try
{
for(int i=0;i<5;i++)
{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
accpetdight =in.readLine();
accpettimes =in.readLine();
a4=Integer.parseInt(accpetdight);
b4=Integer.parseInt(accpettimes);
if(a4==0&&b4==0)
break;
newpoint new_point = new newpoint();
new_point.dight = a4;
new_point.times = b4;
new_point.flag = false;
aa[i]=new_point;
count_aa++;
System.out.println("aa[i].dight:"+aa[i].dight);
System.out.println("aa[i].times:"+aa[i].times);
}
//System.out.println("aa[i].dight"+aa[i].dight);
//System.out.println("aa[i].times"+aa[i].times);
}catch(Exception e)
{}
int aaa=0;
int bbb=0;
String accpetdight1="";
String accpettimes1="";
try
{
for(int j=0;j<7;j++)
{
BufferedReader in=new BufferedReader(new InputStreamReader(System.in));
accpetdight1 =in.readLine();
accpettimes1 =in.readLine();
aaa=Integer.parseInt(accpetdight1);
bbb=Integer.parseInt(accpettimes1);
if(aaa==0&&bbb==0)
break;
newpoint new_point1 = new newpoint();
new_point1.dight = aaa;
new_point1.times = bbb;
new_point1.flag = false;
bb[j]=new_point1;
count_bb++;
System.out.println("bb[i].dight:"+bb[j].dight);
System.out.println("bb[i].times:"+bb[j].times);
}
//System.out.println("bb[i].dight:"+bb[j].dight);
//System.out.println("bb[i].times:"+bb[j].times);
}catch(Exception e)
{}
}
public void getsum()
{ //实现多项式相加
this.getnumber();
int count = 0;
for(int m =0;m<count_aa;m++) //判断是否有相同次数的项
{
for(int n = 0; n<count_bb;n++)
{
if(aa[m].times==bb[n].times)
{
aa[m].flag = true;
bb[n].flag =true;
count ++;
// System.out.println("a[m].dight"+aa[m].dight);
}
}
}
for(int mm =0;mm<count_aa;mm++)
{
for(int nn=0;nn<count_bb;nn++) //对相同的次数的项相加
{
if(aa[mm].times==bb[nn].times)
{
newpoint new_sum= new newpoint();
new_sum.dight= aa[mm].dight+bb[nn].dight;
new_sum.times= aa[mm].times;
new_sum.flag = aa[mm].flag;
sum[mm]=new_sum;
}
}
}
System.out.print("sum=");
for(int ii=0;ii<count_aa;ii++) //正式相加
{
if(aa[ii].flag==false&&aa[ii].dight!=0)
System.out.print(aa[ii].dight+"*x^"+aa[ii].times+"+");
}
for(int jj=0;jj<count_bb;jj++)
{
if(bb[jj].flag==false&&bb[jj].dight!=0)
System.out.print(bb[jj].dight+"*x^"+bb[jj].times+"+");
}
for(int q=0;q<count;q++)
{
if(sum[q].dight!=0)
{
System.out.print("+"+sum[q].dight+"*x^"+sum[q].times);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -