《Java程序设计》
实验报告书
专业班级:  软件工程153班         
学    号:  ********6             
*    **  **                   
****  ***                 
安徽工业大学计算机科学与技术学院
2017年11月
实验一  抛物线轨迹计算
根据一个给定的初始速度 (单位:米/秒)以及一个与水平线相交的发射角 (单位:度) ,计算物体运动的轨迹。要求完整输出物体在空中运动的等时间间隔分布的N行飞行数据记录。假设物体在空间飞行共需要秒,则需要输出如下:
行数
飞行时间
(单位:秒)
X坐标
(水平距离,单位:米)
Y坐标
(高度,单位:米)
1
t/N * 1
?
?
2
t/N * 2
?
?
用java编写一个简单的计算器
i
t/N * i
?
?
99
t/N * (N-1)
?
?
N
t
?
0
假设物体的起始坐标为(0,0),且当物体高度为0时立即停止运动。
1、实验目的
掌握Java编程环境的搭建过程;
掌握eclipse软件创建Java项目的过程;
熟悉Java的基本语法;
锻炼采用程序编码解决实际问题的能力。
2、实验内容和步骤
(1).实验内容:
(2).实验步骤:
3、实验结论
抛物线并不算一个太难的问题,实现的方法也很多,但需要对命题及数据要有一定理解之后才比较好做,同时答辩时老师也提出了几个有趣的小问题,以及要求做一些小的改动,解决
之后对课程的学习有很大的帮助,能用基础知识做一些改动的能力是很重要的。
4、程序清单
实验二  排序算法
创建学生类,包含两个属性:姓名和学号。给出构造函数,输入参数为学生学号,限制为整型类型,范围在[0,999]之间。姓名由3位字符组成,由该学生的学号采用线性映射的方式获取得到,线性映射函数为:,详情见表1。若学生的学号为483,则对应的姓名表示为:“EID”。
表1 学生姓名获取函数映射表
0
1
2
3
4
5
6
7
8
9
f
A
B
C
D
E
F
G
H
I
J
要求输入一个范围在[0,999]之间的整数,通过随机产生的方式生成n个满足上述要求的学生对象。并按照以下三种不同的排序方式完成所有对象的顺序输出:
(a)按照学号的大小顺序完成顺序输出,即给出两个学生s和t,对应学号分别为:m和n,若满足,则要求先输出t后输出s;
(b)按照学生对应学号的十位、个位、百位的大小优先顺序完成顺序输出,即给出两个学生s和t,对应学号分别为:m和n,若m的十位数大于n的十位数,则先输出m,若两者相等,再比较m和n的个位数,相应小的对象先输出;若两位学生的十位、个位均相等,最后比较两个学号的百位数,相应小的先输出。如两个学生的学号分别为:045和418,由于第二个学生的学号十位数1小于第一个学生的十位数4,需要先输出第二个学生对象;
(c)按照学生对应学号的个位、百位、十位的大小优先顺序完成顺序输出,即给出两个学生s和t,对应学号分别为:m和n,若m的个位数大于n的个位数,则先输出m,若两者相等,再比较m和n的百位数,相应小的对象先输出;若两位学生的个位、百位均相等,最后比较两个学号的十位数,相应小的先输出。如两个学生的学号分别为:248和418,由于两位学生的个位数相等,需要再比较两个学号的百位数,而,需要先输出第一个学生对象。
1、实验目的
掌握类的创建方法,掌握对象的声明与创建;
掌握类的继承和多态;
熟悉基本的排序算法;
鼓励采用Collection工具类解决排序问题。
2、实验内容和步骤
(1)实验内容:
(2)实验步骤:
3、实验结论
基于用Collection工具类解决问题的前提下,要实现三位数的随机排列,并且要有百十个,十个百,个百十排序着实不容易,一边照着书,一边在网上搜索,还有同学指导的情况下总算勉强实现了,但具体要在某方面增加或减少一些功能就不怎么熟练了。
4、程序清单
实验三  简易计算器的实现
图1 简易计算器
要求如图1所示实现简易计算器的相关功能,要求具有如下功能:
(a)在相应位置输入数1和数2(在十进制表示下,不超过四位的非负数),能够实现基本的加减乘除运算,并在数3位置显示正确结果;
(b)能够捕获相关程序异常,如除0操作,缺少操作数等;