博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
四则运算 测试与封装 (完善) 5.2 5.3
阅读量:5256 次
发布时间:2019-06-14

本文共 5363 字,大约阅读时间需要 17 分钟。

一、结对小伙伴:陈淑筠 

二、(1)我用小伙伴上一次5.1的作业来单元测试,发现当除数为零时,运行时未抛出异常,于是我们加上了

   1.     if(fh2=='/'){

            
if
(b==
0
){
                
throw 
new 
Exception(
"除数不能为0!"
);
            
}
            
answer=a/b;
        
}
 
2.
 
try 
{
             
res=Calculator.Onefhnum(
1
,
1
,
3
);
             
        
catch 
(Exception e) {
            
e.printStackTrace();
            
Assert.fail(
"抛出异常,测试失败!"
);
        
}
这段代码;
(2).还发现上次作业的代码有错误,三个运算符的最后的第一个为除数没有写上:
if(fh2=='/')//第一为除        {            if(fh3=='+')            {                if(fh4=='+')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b+c+d;                }                if(fh4=='-')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b+c-d;                }                if(fh4=='*')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b+c*d;                }                if(fh4=='/')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(d==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b+c/d;                }                              }            if(fh3=='-')            {                if(fh4=='+')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b-c+d;                }                if(fh4=='-')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b-c-d;                }                if(fh4=='*')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b-c*d;                }                if(fh4=='/')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(d==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b-c/d;                }                              }            if(fh3=='*')            {                if(fh4=='+')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b*c+d;                }                if(fh4=='-')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b*c-d;                }                if(fh4=='*')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b*c*d;                }                if(fh4=='/')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(d==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b*c/d;                }                              }            if(fh3=='/')            {                if(fh4=='+')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(c==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b/c+d;                }                if(fh4=='-')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(c==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b/c-d;                }                if(fh4=='*')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(c==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b/c*d;                }                if(fh4=='/')                {                    if(b==0){                        throw new Exception("除数不能为0!");                    }                    if(c==0){                        throw new Exception("除数不能为0!");                    }                    if(d==0){                        throw new Exception("除数不能为0!");                    }                    answer=a/b/c/d;                }                              }        }        return answer;            }

(3).在此,我们还增加了答案精确到了小数后一位:

static double answer=0.0d;

public static double Onefhnum(int a,int b,int e)throws Exception{

//一个运算符的方法

public static double Twofhnum(int a,int b,int c,int e,int h)throws Exception{

//两个运算符的方法

public static double Threefhnum(int a,int b,int c,int d,int e,int h,int f)throws Exception{

//三个运算符的方法

(4).由于时间原因,在代码中增加了:int precision = 0;

        
if 
(NUM_MAX_OPERATOR == precision) {
            
// 这里我可以处理最多三个运算符的字符串哦:)
        
else 
if 
(NUM_SCALE == precision) {
            
// 这里我可以处理数值范围是 -100 到 100的字符串哦:)
        
else 
if 
(NUM_PRECISION == precision) {
            
// 这里我可以处理精度是小数点后一位的字符串哦:)
        
}
这段代码后,还不知道如何增加和处理括号里的信息。

转载于:https://www.cnblogs.com/JDY64/p/4485558.html

你可能感兴趣的文章
C# 强制关闭当前程序进程(完全Kill掉不留痕迹)
查看>>
ssm框架之将数据库的数据导入导出为excel文件
查看>>
语音识别中的MFCC的提取原理和MATLAB实现
查看>>
验证组件FluentValidation的使用示例
查看>>
0320-学习进度条
查看>>
解决windows系统的oracle数据库不能启动ora-00119和ora-00130的问题
查看>>
ip相关问题解答
查看>>
MetaWeblog API Test
查看>>
反弹SHELL
查看>>
关闭Chrome浏览器的自动更新和升级提示
查看>>
移动、尺寸改变
查看>>
poj2255Tree Recovery【二叉树重构】
查看>>
tcpcopy 流量复制工具
查看>>
vue和react的区别
查看>>
第十一次作业
查看>>
负载均衡策略
查看>>
微信智能开放平台
查看>>
ArcGIS Engine 中的绘制与编辑
查看>>
Oracle--通配符、Escape转义字符、模糊查询语句
查看>>
子网划分讲解及练习(一)
查看>>