zoukankan      html  css  js  c++  java
  • 20172322 2017-2018-2 《程序设计与数据结构》4月11日课上习题增补提交

    20172322 2017-2018-2 《程序设计与数据结构》4月11日课上习题增补提交

    • 课程:《程序设计与数据结构》
    • 班级: 1723
    • 姓名: 张昊然
    • 学号: 20172322
    • 实验教师:王志强老师
    • 测试日期:2018年4月11日
    • 必修/选修: 必修

    增补的习题原题

    • 编译运行PP7.4
    • PP7.4具体内容:
    • 修改RationalNumbeR类,使其实现Comparable接口。为了实现比较,首先计算两个RationalNumber对象(分子和分母)的浮点数等价值,然后以0.0001为误差精度进行比较。编写一个main驱动方法,测试你的修改结果。

    课上提交的代码所存在的问题及原因

    • 问题:缺少缺少精度比较的方法。
    • 原因:没有认真审题导致直接使用了大小于符号进行比较大小,没有使用书上规定的精度值。

    原本代码及改正方案

    • 原本代码:如图。

    • 改正方案:按照书上要求以0.0001为精度来比较两个数值的大小,具体代码以及运行结果如图所示。

    分析思路

    • 在课上提交的代码中问题只是出在没有使用0.0001的误差精度来进行比较,利用0.0001的误差精度来进行比较后就可以完成问题。

    关键代码

            System.out.println("First rational number: " + r1);
            System.out.println("Second rational number: " + r2);
            if (r1.compareTo(r2) < 0.0001)
                System.out.println("r1 < r2");
            else if (r1.compareTo(r2) > 0.0001)
                System.out.println("r1 > r2");
            else
                System.out.println("r1 = r2");
    

    感想

    • 审题一定要仔细,不然造成的后果很严重

    代码托管

    参考资料

  • 相关阅读:
    不同类型的磁盘存储在Ubuntu下的性能测试
    Ubuntu16.04编译安装Redis Desktop Manager
    gnu screen的用法
    MySQL Workbench常用快捷键
    Libevent例子(二)
    Libevent例子(一)
    Ubuntu下的init.d管理update-rc.d
    Centos7 修改终端文字显示颜色
    通过socks tunnel设置http代理
    linux:C++的socket编程
  • 原文地址:https://www.cnblogs.com/zhangyeye233/p/8798792.html
Copyright © 2011-2022 走看看