多项式加法实例
package lianxi; import java.util.Scanner; public class duoixiangshiqiuhe { public static void main(String[] args) { Scanner in = new Scanner(System.in); int [] a = new int [101]; int [] b = new int [101]; int [] c = new int [101]; int x = 0; int xi1; int mi1; int xi2; int mi2; do { xi1 = in.nextInt(); mi1 = in.nextInt(); for(int i = 0;i < a.length;i++) { //读入第一个多项式的幂和系数,并保存在数组a中 if(i == mi1) { a[i] = xi1; break; } } }while(mi1 != 0); do { xi2 = in.nextInt(); mi2 = in.nextInt(); for(int i = 0;i < b.length;i++) { //读入第二个多项式系数并保存在数组b中 if(i == mi2) { b[i] = xi2; break; } } }while(mi2 != 0); for (int i = 0;i < c.length;i++) { //将相应幂对应的系数相加并保存在数组c中 c[i] = a[i]+b[i]; } for( int i = 100; i>1;i--) { //开始分类输出,当i>1时,“x”后面要连接“i” if(c[i]!=0) { //c[i]=0时,不需要输出 if(x==0) { //是否为第一次输出,若是,则每个项前面不需要加符号(负数自带符号) if(c[i]!=1&&c[i]!=-1) { System.out.print(c[i]+"x"+i); } if(c[i]==1) { System.out.print("x"+i); } if(c[i]==-1) { System.out.print("-x"+i); x=1; } } else { if(c[i]>1) { System.out.print("+"+c[i]+"x"+i); } if(c[i]<-1) { System.out.print(c[i]+"x"+i); } if(c[i]==1) { System.out.print("+"+"x"+i); } if(c[i]==-1) { System.out.print("-x"+i); x=1; } } } } if(c[1]!=0) { //i=1时,“x”后面不需要连接“i” if(x==0) { if(c[1]!=1&&c[1]!=-1) { System.out.print(c[1]+"x"); } if(c[1]==1) { System.out.print("x"); } if(c[1]==-1) { System.out.print("-x"); x=1; } } else { if(c[1]>1) { System.out.print("+"+c[1]+"x"); } if(c[1]<-1) { System.out.print(c[1]+"x"); } if(c[1]==1) { System.out.print("+"+"x"); } if(c[1]==-1) { System.out.print("-x"+1); x=1; } } } if(c[0]!=0) { //i=0时,不需要输出“x” if(x==0) { if(c[0]!=1&&c[0]!=-1) { System.out.print(c[0]); } if(c[0]==1) { System.out.print(1); } if(c[0]==-1) { System.out.print(-1); x=1; } } else { if(c[0]>1) { System.out.print("+"+c[1]); } if(c[0]<-1) { System.out.print(c[1]); } if(c[0]==1) { System.out.print("+"+1); } if(c[1]==-1) { System.out.print(-1); x=1; } } } else { //c[0]=0时,需要输出0 if(x==0) { System.out.print(0); } else { System.out.print(+0); } } } }
六、使用对象
6.1 字符类型
单个字符用char类型表示,char类型的常量值必须用一对单引号('')括起来
逃逸字符 /b(回退一格) /t(到下一个制表位)
6.2 包裹类型
让一个类或一个对象做事情,在其后用.运算符
6.3 字符串
用双引号(“”)括起来,算一个字符串。
创建一个字符串,String S = new String("a string")
与数组类似,字符串变量只是管理者。
字符串之间用“+”连接。
输入:in.next()表示读入一个单词,单词的标志是空格,tab和换行。in.nextline()表示读入一整行
所有创建出来的字符串都是不可变的
念整数实例
package lianxi; import java.util.Scanner; public class nianzhengshu { public static void main(String[] args) { Scanner in = new Scanner(System.in); int m = in.nextInt(); int a = m; int b = 0; if(m==0) { System.out.print("ling"); } if (m<0) { System.out.print("fu"+" "); m=-m; } do { a/=10; b++; }while(a!=0); while(b>0){ int p = (int) Math.pow(10, --b); //b先减再用 int x = (int)(m/p); m = (int)(m%p); switch(x) { case 0: System.out.print("ling"); break; case 1: System.out.print("yi"); break; case 2: System.out.print("er"); break; case 3: System.out.print("san"); break; case 4: System.out.print("si"); break; case 5: System.out.print("wu"); break; case 6: System.out.print("liu"); break; case 7: System.out.print("qi"); break; case 8: System.out.print("ba"); break; case 9: System.out.print("jiu"); break; } if (b>0) { System.out.print(" "); } } } }
浙公网安备 33010602011771号