首页 > 代码库 > 第十周(11.18-11.24)----结对项目----出带分数的题目
第十周(11.18-11.24)----结对项目----出带分数的题目
将题目分成两个部分一个是操作符,一个是操作数。每个题目的组成是这样的:数 符 数 符 数。这里的每个操作数可能是整数,可能是分数,而分数中的分子或分母可能带有乘法计算。所以为了体现后来的分数计算,我将这里的操作符限制在{+,-}。
fuhao类
public String rfuhao() | 返回一个操作符 |
public String num() | 返回一个数或者一个乘法算式 |
public String xiang() | 返回一个数或者一个分数 |
rfuhao():利用随机数选择String的下标,实现随机返回"+"或者"-"
1 public String rfuhao(){ 2 String[] fuhao = {"+","-"}; 3 return fuhao[(int)(Math.random()*2)]; 4 }
num():通过随机数将出乘法算式的几率降低
public String num(){ String danxiang = ""; String num1 = (int)(1+Math.random()*9)+""; String num2 = (int)(1+Math.random()*9)+""; int i = (int)(Math.random()*10);//要么出数要么出算式 if(i==0){ return danxiang = num1+"*"+num2; }else return num1; }
xiang():"/"前面或者后面可能是数,也可能是乘法算式
1 public String xiang(){ 2 int i = (int)(Math.random()*2); 3 fuhao fu = new fuhao(); 4 switch(i){ 5 case 0: 6 return fu.num(); 7 case 1: 8 return fu.num()+"/"+fu.num(); 9 default : 10 return null; 11 } 12 }
main:
1 public static void main(String[] args) { 2 // TODO Auto-generated method stub 3 fuhao rf = new fuhao(); 4 int i=50; 5 while(i!=0){ 6 System.out.print("("+(51-i)+")"); 7 System.out.println(rf.xiang()+rf.rfuhao()+rf.xiang()+rf.rfuhao()+rf.xiang()); 8 9 i--; 10 } 11 }
结果:
第十周(11.18-11.24)----结对项目----出带分数的题目
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。