实验2报告 胡泊
Posted hp12138
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验2报告 胡泊相关的知识,希望对你有一定的参考价值。
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报告 胡泊的主要内容,如果未能解决你的问题,请参考以下文章
2017-2018-2 20165215 实验四《Android开发基础》实验报告
2017-2018-2 20165228 实验四《Android程序设计》实验报告
2018-2019-2 20175213实验三《敏捷开发与XP实践》实验报告