zoukankan      html  css  js  c++  java
  • 第2次实验报告

    20145217 《java程序设计》第2次实验报告

    实验内容

    • 1.Java面向程序设计,采用TDD的方式设计有关实现复数类Complex。

    • 2.理解并掌握面向对象三要素:封装、继承、多态。

    • 3.运用并且掌握单元测试。Java面向程序设计,采用TDD的方式设计有关实现复数类Complex。

    实验步骤

    本次实验在编写并设计有关实现复数类Complex的功能下,尝试使用TDD方式,并且运用单元测试

    伪代码:

    公共类Complex;
    定义双精度的实部和虚部(实部用real,虚部用unr);
    构造函数取得实部;
    构造函数取得虚部;
    构造函数:两个复数相加,结果返回;
    构造函数:两个复数相减,结果返回;
    构造函数:两个复数相乘,结果返回;
    构造函数:两个复数相除,结果返回;
    ··· ···

    产品代码:

    package complex;
    public class Complex
    
    {
        double real, unr; //实部和虚部
    
        public Complex()        //默认构造方法
        {
            this.real = 0;
            this.unr = 0;
        }
    
        public Complex(double real, double unr)
        {
            this.real = real;
            this.unr = unr;
        }
    
        public double getReal() {
            return this.real;
        }
    
    
        public double getImage() {
            return this.unr;
        }
    
        public double getReal(Complex c) {
            return c.real;
        }
    
    
        public double getImage(Complex c) {
            return c.unr;
        }        //得到复数c的虚部
    
    
        public void setReal(double real) {
            this.real = real;
        }        //设置实部
    
    
        public void setImage(double unr) {
            this.unr = unr;
        }        //设置虚部
    
    
        public Complex addComplex(Complex a, Complex b)    //两个复数相加,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real + b.real;
            temp.unr = a.unr + b.unr;
            return temp;
        }
    
        public Complex decComplex(Complex a, Complex b)    //两个复数相减,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real - b.real;
            temp.unr = a.unr - b.unr;
            return temp;
        }
    
        public Complex mulComplex(Complex a, Complex b)    //两个复数相乘,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real * b.real - a.unr * b.unr;
            temp.unr = a.real * b.unr + a.unr * b.real;
            return temp;
        }
    
        public Complex divComplex(Complex a, Complex b)    //两个复数相除,结果返回
        {
            Complex temp = new Complex();
            temp.real = (a.real * b.real + a.unr * b.unr) / (b.real * b.real + b.unr * b.unr);
            temp.unr = (a.unr * b.real - a.real * b.unr) / (b.real * b.real + b.unr * b.unr);
            return temp;
        }
    
        public void printComplex()
        {
            System.out.println("" + this.real + "+" + this.unr + "i");
        }
    }
    

    测试代码:

    package complex;
    public class Comlextest {
    public static void main(String[] args) //测试代码
    
    {
        Complex cc=new Complex(1,2);
        cc.printComplex();
        Complex dd=new Complex(4,3);
        dd.printComplex();
        System.out.println();
        Complex ff=new Complex();
    
        ff=ff.addComplex(cc,dd);
        ff.printComplex();
        ff=ff.decComplex(cc,dd);
        ff.printComplex();
        ff=ff.mulComplex(cc,dd);
        ff.printComplex();
        ff=ff.divComplex(cc,dd);
        ff.printComplex();
        System.out.println();
        cc.printComplex();
        cc=new Complex(2,5);
        cc.printComplex();
        cc=new Complex(5,8);
        cc.printComplex();
        cc=new Complex(6,8);
        cc.printComplex();
        System.out.println();
        cc.setReal(123);
        cc.setImage(456);
        cc.printComplex();
        System.out.println(""+cc.getReal()+"+"+cc.getImage()+"i");
    }
    }
    

    测试结果:


    总结:

    老师的博客内容十分的详细,我把博客专门复制粘贴到word文档中,再细看的过程中我发现博客足足有46页,虽然老师的用以很清楚,但面对这样一份实验要求我不禁打怵起来,希望老师能以后把实验要求写的扼要一些,最然我知道自己没资格这样评论,但这样的实验要求真的成为了负担。

    参考资料

    实验内容

    • 1.Java面向程序设计,采用TDD的方式设计有关实现复数类Complex。

    • 2.理解并掌握面向对象三要素:封装、继承、多态。

    • 3.运用并且掌握单元测试。Java面向程序设计,采用TDD的方式设计有关实现复数类Complex。

    实验步骤

    本次实验在编写并设计有关实现复数类Complex的功能下,尝试使用TDD方式,并且运用单元测试

    伪代码:

    公共类Complex;
    定义双精度的实部和虚部(实部用real,虚部用unr);
    构造函数取得实部;
    构造函数取得虚部;
    构造函数:两个复数相加,结果返回;
    构造函数:两个复数相减,结果返回;
    构造函数:两个复数相乘,结果返回;
    构造函数:两个复数相除,结果返回;
    ··· ···

    产品代码:

    package complex;
    public class Complex
    
    {
        double real, unr; //实部和虚部
    
        public Complex()        //默认构造方法
        {
            this.real = 0;
            this.unr = 0;
        }
    
        public Complex(double real, double unr)
        {
            this.real = real;
            this.unr = unr;
        }
    
        public double getReal() {
            return this.real;
        }
    
    
        public double getImage() {
            return this.unr;
        }
    
        public double getReal(Complex c) {
            return c.real;
        }
    
    
        public double getImage(Complex c) {
            return c.unr;
        }        //得到复数c的虚部
    
    
        public void setReal(double real) {
            this.real = real;
        }        //设置实部
    
    
        public void setImage(double unr) {
            this.unr = unr;
        }        //设置虚部
    
    
        public Complex addComplex(Complex a, Complex b)    //两个复数相加,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real + b.real;
            temp.unr = a.unr + b.unr;
            return temp;
        }
    
        public Complex decComplex(Complex a, Complex b)    //两个复数相减,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real - b.real;
            temp.unr = a.unr - b.unr;
            return temp;
        }
    
        public Complex mulComplex(Complex a, Complex b)    //两个复数相乘,结果返回
        {
            Complex temp = new Complex();
            temp.real = a.real * b.real - a.unr * b.unr;
            temp.unr = a.real * b.unr + a.unr * b.real;
            return temp;
        }
    
        public Complex divComplex(Complex a, Complex b)    //两个复数相除,结果返回
        {
            Complex temp = new Complex();
            temp.real = (a.real * b.real + a.unr * b.unr) / (b.real * b.real + b.unr * b.unr);
            temp.unr = (a.unr * b.real - a.real * b.unr) / (b.real * b.real + b.unr * b.unr);
            return temp;
        }
    
        public void printComplex()
        {
            System.out.println("" + this.real + "+" + this.unr + "i");
        }
    }
    

    测试代码:

    package complex;
    public class Comlextest {
    public static void main(String[] args) //测试代码
    
    {
        Complex cc=new Complex(1,2);
        cc.printComplex();
        Complex dd=new Complex(4,3);
        dd.printComplex();
        System.out.println();
        Complex ff=new Complex();
    
        ff=ff.addComplex(cc,dd);
        ff.printComplex();
        ff=ff.decComplex(cc,dd);
        ff.printComplex();
        ff=ff.mulComplex(cc,dd);
        ff.printComplex();
        ff=ff.divComplex(cc,dd);
        ff.printComplex();
        System.out.println();
        cc.printComplex();
        cc=new Complex(2,5);
        cc.printComplex();
        cc=new Complex(5,8);
        cc.printComplex();
        cc=new Complex(6,8);
        cc.printComplex();
        System.out.println();
        cc.setReal(123);
        cc.setImage(456);
        cc.printComplex();
        System.out.println(""+cc.getReal()+"+"+cc.getImage()+"i");
    }
    }
    

    测试结果:


    总结:

    老师的博客内容十分的详细,我把博客专门复制粘贴到word文档中,再细看的过程中我发现博客足足有46页,虽然老师的用以很清楚,但面对这样一份实验要求我不禁打怵起来,希望老师能以后把实验要求写的扼要一些,最然我知道自己没资格这样评论,但这样的实验要求真的成为了负担。

    参考资料

  • 相关阅读:
    ubuntu远程windows桌面
    spring boot 给返回值加状态 BaseData
    spring boot 拦截异常 统一处理
    IntelliJ IDEA spring boot 远程Ddbug调试
    IntelliJ IDEA 常用插件
    spring boot 请求地址带有.json 兼容处理
    spring boot 接口返回值去掉为null的字段
    spring boot 集成disconf
    Spring boot 自定义拦截器
    Linux下安装MySQL
  • 原文地址:https://www.cnblogs.com/jokebright/p/5402321.html
Copyright © 2011-2022 走看看