码迷,mamicode.com
首页 > 其他好文 > 详细

实验2报告 胡泊

时间:2019-09-16 23:39:24      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:img   成就感   面向   tee   出现   html   保留   字符串类   double   

20182316胡泊 2019-2020-1 《数据结构与面向对象程序设计》实验2报告

课程:《程序设计与数据结构》
班级: 1823
姓名: 胡泊
学号:20182316
实验教师:王志强
实验日期:2019年[9月16日]
必修/选修: 必修

1.实验内容

  • (1) 编写简单的计算器,完成加减乘除模运算。
  • (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出。
  • (3) 编写测试代码,测试验证。(https://www.cnblogs.com/rocedu/p/4472842.html

2. 实验过程及结果

编写简单的计算器程序,掌握数据的定义和表达式求解的基础知识, 掌握循环和判定语句的使用
, 掌握单元测试,上传到码云,掌握后由学长学姐验收。

编写简单的计算器程序

技术图片

单元测试

技术图片

上传码云

3. 实验过程中遇到的问题和解决过程

  • 问题1:在编写计算器时,很简单的加法会出现 .00000000001或者.9999999999
    技术图片
  • 问题1解决方案: 将double定义的变量改为用float定义,小数问题就没有了
    • 但是,后来我又得知这其实是java中Double类型的运算精度丢失的问题,我没有从正面解决这个问题,原谅我实在是看不懂,先贴个原网站,等之后学习保留位数时,再好好钻研。
  • 问题2:吃回车问题(可能是吧,反正C语言是的)
    技术图片
  • 问题2解决方案:当要输入字符或字符串时,如果前面不是字符或字符串类型的输入,那么就会出现吃回车问题,此时就多打一个op=scan.nextLine();将缓冲器清理掉。
  • 问题3:return只能返回一种类型的数据。
    技术图片
  • 问题3解决方法:我使用的是double来返回数据,而在程序中为了其实用性,增加了纠错,比如“can not divide 0","unrecognizeable demand"等等,针对这个问题,有两种解决方法:
    • 将返回的double型浮点数转化为字符串
    • 将报错语句换成-1,-2等数字,作为返回值返回。
  • 问题4:编译时找不到文件
    技术图片
  • 问题4解决方案:文件名与创建的类名不同,所以虽然有这个文件却无法编译,更改类名与文件名一致。

感悟

  • 当编译出现错误时,我可能通过一种或一些奇怪的方法误打误撞编译成功,甚至运行成功了,但是这些小小的问题背后可能有很多深层的知识,如果不想办法解决,就只能一知半解,所以要有探索精神。
  • 在自学的过程中,按照博客一步步操作,到最终完成,虽然过程艰难,但让我有了很强的成就感,在帮助别人以及向别人请教的时候,都收获很大。
  • 感谢学长学姐的指导,一直待到了最后,给了我们很大的帮助,十分感谢。 (⊙ω⊙)

参考资料

实验2报告 胡泊

标签:img   成就感   面向   tee   出现   html   保留   字符串类   double   

原文地址:https://www.cnblogs.com/hp12138/p/11530757.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!