您的位置:首页 > 其它

四则运算测试与封装5.2 5.3 结对

2015-05-08 18:51 295 查看
开发环境:eclipse

结对同伴 :王逸辉

同伴博客:http://www.cnblogs.com/wyh624945780/

程序代码:

import java.util.Random;
public class JiS {
private char[] ch = new char[] { '+', '-', '*', '/' };
private int a;
private int b;
private int e;
private int d;
private char c;
private String[]str=new String[10];
private String[]stb=new String[10];
private String ss="";
private String sb="";
public JiS(){

}
public String tiM(int a,int b,int e,int d){
Random r = new Random();
boolean flag = true;
while (flag) {
//  a=(int) (Math.random()*200-100);
//a=10000;
//b=(int) (Math.random()*200-100);
//e=(int) (Math.random()*200-100);
//d=(int) (Math.random()*200-100);
try{
if(a>1000||a<-1000||b>1000||b<-1000||e>1000||e<-1000||d>1000||d<-1000)
{
throw new YC();
}

}catch(YC z)
{
z.fw();
}

c = ch[r.nextInt(ch.length)];
// System.out.println(a+","+b+","+c);

switch (c) {
case '+':
try{
if(a>1000||a<-1000||b>1000||b<-1000||e>1000||e<-1000||d>1000||d<-1000)
{

throw new YC();
}
}
catch(YC z)
{
z.fw();
}
if (a + b <= 10000)
{
ss=a + "+" + b + "=" + (a + b);
sb=b + "+" + a + "=" + (a + b);
flag = false;
}
break;
case '-':
if (a - b >= 0) {
ss=a + "-" + b + "=" + (a - b);
sb=ss;
flag = false;
}
break;
case '*':
if (a * b <= 10000) {
ss=a + "*" + b + "=" + a * b;
sb=b + "*" + a + "=" + a * b;
flag = false;
}
break;
case '/':
if (b != 0) {
ss=a + "/" + b + "=" + a / b;
sb=ss;
flag = false;
}
break;
}
}
return ss;
}
public void tiS(){
loop:for(int i=0;i<10;i++){
tiM(a,b,e,d);
str[i]=ss;
stb[i]=sb;
ss="";
sb="";
for(int j=0;j<i;j++){
if(str[j]==str[i]||str[j]==stb[i]){i--;continue loop;}
}
System.out.println("第"+(i+1)+"题:"+str[i]);
}
}
public static void main(String[] args) {
JiS js=new JiS();
js.tiS();
}
}


import java.util.*;
public class YC extends Exception{
public void chuling()
{
System.out.printf("分母不能为零!");
}
public void fw()
{
System.out.print("数值超出范围!");
}
}


测试代码:

import static org.junit.Assert.*;

import org.junit.Test;

public class JiSTest {

@Test
public void testTiM() throws Error {
JiS jis=new JiS();
String result=jis.tiM(10, 8, 5,2);
assertEquals(3,result);
//fail("Not yet implemented");
}

}


异常调试:

一开始我们弄数值大一点,显示超出数值提示。





心得与体会:

这次的程序测试比想象的难,通过和结对队友的共同努力,加上我们研究网上的例子,终于搞定了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: