结对编程作业:某公司程序员二柱的小孩上了小学二年级,老师让家长每天出30道(100以内)四则运算题目给小学生做。
编程语言:java
结对对象:沙夫都 博客地址:http://www.cnblogs.com/S-vendor/
双方贡献:1:1
结对照片:
源代码:
使用集合来控制使多项式不重复,被操作数默认为0~9,避免被除数为0;
1 public static void main(String[] args) { 2 Set<Func> funcs = new HashSet<>(); 3 4 Random ran = new Random(); 5 char[] chars = {'+', '-', '×', '÷'}; 6 while (funcs.size() < 10) { 7 Func func = new Func(); 8 func.num1 = ran.nextInt(100); 9 func.num2 = ran.nextInt(99)+1; 10 func.aChar = chars[ran.nextInt(4)]; 11 12 funcs.add(func); 13 } 14 15 for (Object o : funcs) { 16 Func c = (Func) o; 17 System.out.println(c.num1 + " " + c.aChar + " " + c.num2+" ="); 18 } 19 }
方法类:
方法类继承Comparable 接口实现 compareTo(Object o)方法
public class Func implements Comparable { public int num1; public int num2; public char aChar; @Override public int compareTo(Object o) { Func func = (Func) o; if (this.num1 == func.num2 && this.num2 == func.num1) { return (this.aChar - func.aChar); } if (this.num1 == func.num1) { if (this.num2 == func.num2) { return (this.aChar - func.aChar); } else { return this.num2 - func.num2; } } else { return this.num1 - func.num1; } } }