5.1进化

package sizeys;

import java.text.DecimalFormat;
import java.util.Scanner;

public class H {

    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        try {
            System.out.print("请输入第一个数:");
            double x = scanner.nextDouble();
            System.out.print("请输入第二个数:");
            double y = scanner.nextDouble();
            System.out.print("请输入运算符:");
            String s = scanner.next();
            char z = s.charAt(0);
            js.yunsuan(x, y, z);
        } catch (Exception e) {
            System.out.println("请输入正确的数据!");

        }

    }

}

package sizeys;

import java.text.DecimalFormat;

public class js {

    public static void yunsuan(double x, double y, Character z) {
        DecimalFormat r = new DecimalFormat();
        r.applyPattern("#0.00");
        if (z.equals(‘+‘)) {
            jia.yunsuan1(x, y);
            // System.out.println(x + "+" + y + "=" + r.format((x + y)));
        } else if (z.equals(‘-‘)) {
            jia.yunsuan2(x, y);
            // System.out.println(x + "-" + y + "=" + r.format((x - y)));
        } else if (z.equals(‘*‘)) {
            jia.yunsuan3(x, y);
            // System.out.println(x + "*" + y + "=" + r.format((x * y)));
        } else if (z.equals(‘/‘)) {
            if (y == 0) {
                System.out.println("被除数不能为0");
            } else {
                jia.yunsuan4(x, y);
                // System.out.println(x + "/" + y + "=" + r.format((x / y)));
            }

        } else {
            System.out.println("无法识别改运算符");
        }
    }

}

package sizeys;

import java.text.DecimalFormat;

public class jia {

    public static double yunsuan1(double x, double y) {
        DecimalFormat r = new DecimalFormat();

        r.applyPattern("#0.00");
        System.out.println(x + "+" + y + "=" + r.format((x + y)));
        return x + y;
    }

    public static double yunsuan2(double x, double y) {
        DecimalFormat r = new DecimalFormat();
        r.applyPattern("#0.00");
        System.out.println(x + "-" + y + "=" + r.format((x - y)));
        return x - y;
    }

    public static double yunsuan3(double x, double y) {
        DecimalFormat r = new DecimalFormat();
        r.applyPattern("#0.00");
        System.out.println(x + "*" + y + "=" + r.format((x * y)));
        return x * y;
    }

    public static double yunsuan4(double x, double y) {
        DecimalFormat r = new DecimalFormat();
        r.applyPattern("#0.00");
        System.out.println(x + "/" + y + "=" + r.format((x / y)));
        return x / y;
    }

}

package sizeys;

import static org.junit.Assert.*;

import org.junit.Test;

public class jiaTest {

    @SuppressWarnings("static-access")
    @Test
    public void testYunsuan1() {
        jia core1 = new jia();
        double a = core1.yunsuan1(9, -3);
        // 测一下:9和-3传入我的add方法里面,结果会不会是6?
        // assertEquals(6, a);

    }

    @Test
    public void testYunsuan2() {

        jia core2 = new jia();
        double b = core2.yunsuan2(9, 4);
    }

    @Test
    public void testYunsuan3() {

        jia core3 = new jia();
        double c = core3.yunsuan3(9, -1);
    }

    @Test
    public void testYunsuan4() {

        jia core4 = new jia();
        double d = core4.yunsuan4(9, 5);
    }
}

以下为黑盒法与白盒法测试技术:

1.黑盒法测试。这个测试主要就是以用户角度测试代码的功能与用途:


测试用例


输入条件


有效等价类


无效等价类


题目有效性判断


只允许数字


8


OP


输入字符的有效性判断


(8,2,OP)


8,2


OP


测试对象


测试说明


测试数据


测试结果


题目数量


输入非法数据


t


请输入正确的数据!


加减乘除计算


输入符号有误


5 6 o


无法识别该运算符


计算范围


精确度


11.0和11和11.00


正确

2.白盒法测试。对软件的过程性细节做细致的检查。


测试用例


用例说明


实际结果


加法处理


1.2+2.3


3.50


减法处理


9-4.2


4.80


乘法处理


11*3.0


33.00


除法处理


8.0/2


4.0


除零处理


5.0/0


抛出异常


代码覆盖率


100%


100%

同伴:201306114208,陈秋亮。微博:http://www.cnblogs.com/chenqiuliang/
时间: 2024-11-02 23:53:30

5.1进化的相关文章

Excel导入导出的业务进化场景及组件化的设计方案(转)

1:前言 看过我文章的网友们都知道,通常前言都是我用来打酱油扯点闲情的. 自从写了上面一篇文章之后,领导就找我谈话了,怕我有什么想不开. 所以上一篇的(下)篇,目前先不出来了,哪天我异地二次回忆的时候,再分享分享. 话说最近外面IT行情飞涨还咋的,人都飞哪去了呢,听说各地的军情都进入紧急状态了. 回归下正题,今天就抽点时间,写写技术文,和大伙分享一下近年在框架设计上的取的一些技术成果. 2:项目背景 在针对运营商(移动.联通.电信.铁塔)的信息类的系统中,由于相关的从业人员习惯于Excel的办公

JDBC的进化3

这次进化完成后,JDBC的进化就需要设置一个savepoint了,然后提交一下,提交到我们的脑袋硬盘中. 上一次说到了利用Statement对象来发送sql语句到数据库.然而这样的话,会暴露出两个问题. 那么问题来了!!! 问题1: 在执行executeUpdate(String sql)和executeQuery(String sql)方法时,我们需要拼写sql字符串,就像下面这样: String sql = "insert into customers values(21, 'yushen1

JDBC的进化3--补充:事务处理

接着JDBC的进化3,我们来说数据库事务. 事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态. 怎么理解呢? 一组逻辑单元:我认为指的是多条的DML操作,只是一条DML语句的话,对于mysql来说,执行完成功就自动提交了,没成功的话,就没成功喽,这样说来,一条DML语句就相当于一个原子,不可再分了. 从一种状态变换到另一种状态:即这组操作是成功了还是失败了,他们必须同时都成功,有一个失败,就退回到起点.例如银行的转账,不能一个成功,一个失败吧. 来看看JDBC的事务处理: 先来看看,在什

3星|《人体的故事》:肥胖、糖尿病之类的现代多发疾病跟人类进化路径关系密切

作者是人类进化学学者,全书复习人类进化史,重点讲许多现代多发疾病跟人类进化路径的密切关系:比如肥胖,历史上食物匮乏是常态,人类需要尽可能地多吃才能为以后的饥饿做准备. 我读后的总体感觉是没有新的观点与信息.不了解相关领域的读者可以看一看.学者写的,可信度还是比较高的. 以下是书中一些内容的摘抄: 1:我是人类进化生物学教授,我研究的是人类的过去,而不是未来.我不是预言家.#37 2:人体在进化过程中并没有变得更健康,相反,自然选择要求我们在艰难的环境下尽可能拥有更多后代.因此,进化不会让我们在富

《三联生活周刊》2017年23期:5星。地球年龄与人类进化的检测技术的简史。

本期主题是人类测量地球年龄与人类进化史的技术的简史.地球年龄最终依靠同位素测量法确定为45.5亿年,人类进化史初期是根据化石推测,后来则根据DNA的变化来推算. 个人感觉这是看过的袁岳的文章中最精彩的一篇,有靠谱的技术发展史,故事也比较有意思.袁岳是理科生风格,严肃有余,讲故事的天赋则相对不足.当然反过来说讲故事天赋比较好的人,一般来说写出来的东西可靠性稍差. 以下是书中内容的摘抄,大部分是主题文章的摘抄.#号后面是kindle电子书中的页码: 1:再后来,他采用了一种从铀铅测年法推导出来的铅铅

进化_公平_正义

匹夫怀璧,真的有罪么? 怀璧没有罪,有罪的是他没有能力,没有社会承认他拥有和氏璧的能力 那如何承认呢? 假如秦始王拿到那块和氏璧,没人会质疑,普通人拿到,无论是什么手段拿到,都是有罪的 不择手段,真的是邪恶的? 从来不是,法家依法治国思想,只重视果,不顾因,只重形,不重内.和氏璧在秦始王手里,无论是如何的到的,不择手段也好,以城池换也罢,那时社会形态下,都是正义的,而普通人获得,就是不择手段 那公正与正义何在? 从海洋到陆地,从个体到团体,进化付出的代价非常大,只要从海洋登陆上岸,不在属于海洋,

以太网进化历程半景-从10Mbps到1Tbps

继Netfilter conntrack,Linux Bridge之后又是一个半景,依然如故,我不会在文中罗列技术规范和细节,仅仅是希望本文可以帮助人们理解以太网到底是什么,为什么如此成功. 0.动机,愿景以及声明 前端时间帮朋友解决一个编码问题,碰到了全双工这个概念,正好写了一个程序,实现了类似CDMA那种沃尔什编码,即从一个混合信号中分离中自己要的那部分,然而代码是好写的,往线缆上一放就全乱了,这是电学原理导致的.就这么说吧,请看下图: 请问P点的电压是多少?很简单的一个问题,是不是?是的.

马云的阿里正在实践《失控》里人类下一轮进化:连接

1994年写成的<失控>讲了一件事情:连接.按<失控>的核心观点,连接是人类下一轮的进化方式,从以个人为单元的社会进化到以群体为单元的社会,连接是主要的技术实现手段.<失控>还有一个观点,就是现在的人们通过连接成群体来实践下一轮进化,但进化之后的群体智能是什么样子,这超越了现在人们的想象.因此,不能用今天的经验来预测明天的世界,连接之后的群体智能将在连接的过程中自然而然展现出来. 可以说腾讯率先在消费人群中实践了<失控>的思想,这也成就了微信的成功.后来,马

程序员突围-程序调试分析(一) 我从菜鸟进化的感悟

程序员突围-程序调试分析(一) 我从菜鸟进化的感悟 在说程序调试分析之前,我们还是了解一些基本的概念性的东西(在下现在从事java,因而都已java为例) 1. bug的分类 根据程序的阶段和MSDN和看过的一些书籍的分析,bug分为编译错误,运行时错误和逻辑的错误 (1)  编译错误 一般初学者犯错比较多的地方,编译错误,说白了就是程序在从java编译成.class文件时出现了问题,这个问题的现象比较明显,比如说语句写的有问题,那么对于这类问题的解决方法是什么呢,翻翻书,翻翻API(翻阅API

Atitit 软件架构方法的进化与演进cs bs soa roa &#160;msa&#160; attilax总结

Atitit 软件架构方法的进化与演进cs bs soa roa  msa  attilax总结 1.1. 软件体系架构是沿着单机到 CS 架构,再到 BS 的三层架构甚至多层架构逐步发展过来的,关于多层架构 1 1.2. 主进化路线Cs>> bs >>  SOA>>MSA(微服务架构1 1.3. 1 1.4. 面向资源体系架构(ROA)1 1.4.1. 管道和过滤器风格(数据流风格)2 1.5. 数据抽象与面向对象风格(调用/返回风格)2 1.6. 基于事件的隐式调用