ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java 大作业 实验上机报告

2021-07-16 14:00:52  阅读:230  来源: 互联网

标签:distance java 上机 Point double 作业 实验 100 方法


java实验上机报告(包括Java源代码、上机报告文档、视频讲解)
实验一:
在这里插入图片描述
实验二 方法设计:

二、实验要求
1、百鸡百钱问题。公鸡每只3元,母鸡每只5元,小鸡3只1元,用100元钱买100只鸡,公鸡、母鸡、小鸡应各买多少?
2、输入一个整数,判断该数是否为降序数,是输出true,否则输出false。所谓降序数是指该数的各位数字从高到低逐步下降(包括相等)。例如,5441是降序数,但363不是。

题目一
一、实验要求
百鸡百钱问题。公鸡每只3元,母鸡每只5元,小鸡3只1元,用100元钱买100只鸡,公鸡、母鸡、小鸡应各买多少?
二、实验思路
这个实验主要考察对for循环和if判断语句的使用,有三种方法写
方法一:设公鸡x只,母鸡y只,小鸡z只,利用三重循环从1~100循环x,y,z当x+y+z=100并且3x+5y+z/3=100时输出x,y,z。时间复杂度为O(n^3)
方法二:设公鸡x只,母鸡y只,小鸡100-x-y只,利用二重循环从1~100循环x,y当(100-x-y)%3=0并且3x+5y+(100-x-y)/3=100时输出x,y,100-x-y。时间复杂度为O(n^2)
方法三:设公鸡x只,母鸡(200-8x)/14只,小鸡(1200-6x)/14只,利用一重循环从0~100循环x当(200-8x)%14=0并且(1200-6x)%14=0时输出x,(200-8x)/14,(1200-6x)/14。时间复杂度为O(n)

在这里插入图片描述
实验三 抽象与封装:

实验要求
编写一个学生类Student,包含的属性有学号、姓名、年龄,将所有学生存储在一个数组中,自拟数据,用数组的初始化方法给数组赋值,并实现如下操作:
(1)将所有学生年龄增加一岁;
(2)按数组中顺序显示所有学生信息;
(3)查找显示所有年龄大于20岁的学生名单。
三、实验思路
先在Student类中定义学号、姓名、年龄这三个属性,再写构造方法用来初始化三个属性,因为要求所有学生存储在一个数组中,所以在所有学生的年龄增加一岁方法中通过for循环遍历所有学生年龄并加一,在按数组顺序显示所有学生信息中直接遍历输出所有学生信息即可,在查找显示所有年龄大于20岁的学生名单方法中一边遍历一边判断学生年龄是否大于20

在这里插入图片描述
实验四 继承与多态:

二、实验要求
1、给Point类添加以下几个求两点间距离的多态方法,并进行调用测试。
public double distance(Point p) //求点到p点之间的距离
public double distance(int x, int y) //求点到(x,y)点之间的距离
public static double distance(Point x, Point y) //求x,y两点之间的距离

2、定义一个Person类,含姓名、性别、年龄等字段,继承Person类设计Teacher类,增加职称、部门等字段;继承Person类设计Student类,增加学号、入学时间、专业等字段。定义各类的构造方法和toString()方法,并分别创建对象进行测试。

题目一
一、实验要求
给Point类添加以下几个求两点间距离的多态方法,并进行调用测试。
public double distance(Point p) //求点到p点之间的距离
public double distance(int x, int y) //求点到(x,y)点之间的距离
public static double distance(Point x, Point y) //求x,y两点之间的距离
二、实验思路
对于方法1public double distance(Point p) //求点到p点之间的距离
利用距离公式Math.sqrt((p.x-this.x)(p.x-this.x)+(p.y-this.y)(p.y-this.y))求距离
对于方法2public double distance(int x, int y) //求点到(x,y)点之间的距离
利用距离公式Math.sqrt((x-this.x)(x-this.x)+(y-this.y)(y-this.y))
对于方法3public static double distance(Point x, Point y) //求x,y两点之间的距离
可以直接调用方法1 x.distance(y);来实现

在这里插入图片描述

题目二
一、实验要求
定义一个Person类,含姓名、性别、年龄等字段,继承Person类设计Teacher类,增加职称、部门等字段;继承Person类设计Student类,增加学号、入学时间、专业等字段。定义各类的构造方法和toString()方法,并分别创建对象进行测试。
二、实验思路
Person作为父类先定义姓名、性别、年龄等属性,再设计构造方法及toString方法,子类Teacher类继承Person类,先定义增加职称、部门等属性,写构造方法时先用super关键字指定要调用父类的构造方法,再加上自己的属性,写toString时也要先调用父类的toString方法。子类Student类和Teacher类写法相似

在这里插入图片描述
实验五 常用系统类:

二、实验要求
输入若干行文本,以end作为结束行,统计该文本由多少行组成,字符总数,有多少“the”,将整个文本中所有单词首字母为小写的改为大写输出。
三、实验思路
先写求字符数量,the数量,和首字母大写的三个方法,求字符数量和the数量的方法中遍历的过程计数即可,首字母大写的方法中先将字符串按空格分割,再用toUpperCase方法将首字母大写,再把字符串拼接起来。主类中利用ArrayList定义一个list按行存入所有字符串,再通过遍历每一行求答案

在这里插入图片描述
实验六 Applet编程:

二、实验要求
在Applet画面中绘制一个19×19的围棋棋盘。棋盘的颜色由白(white255,255,255)、灰(gray128,128,128)、橘黄(orange255,200,0)、浅红(pink255,175,175)几种颜色中随机选取。
三、实验思路
先利用一个双重循环控制格子数量为19×19再定义一个随机数1~4分别对应四种颜色,接着利用Graphics2D和Rectangle2D中的各种方法对格子进行操作

在这里插入图片描述
实验七 多线程编程:

编写一个可变颜色的标签,用一个按钮控制颜色的改变与停止。点击按钮颜色停止变化,再点击该按钮颜色又变化。颜色的变化可用随机数确定。
三、实验思路
先设置两个属性变色区域及按钮,再设计ActionEvent事件利用一个变量flag来记录按钮变化情况(开始或停止),再设计多线程控制变色区域利用随机数随机取色,线程休息时间设置为100毫秒方便观察,在主类中设置流式布局,将按钮和变色区域加入窗体并使窗体可见。

在这里插入图片描述
实验八 流式输入输出与文件处理:

从一个文本文件中读入30个学生的姓名和成绩,计算所有学生的最高分、最低分、平均分,将情况写入另一个文本文件中。
三、实验思路
先写好求最高分、最低分、平均分的三个方法,再在主方法中写读取文件和写入文件的内容,读取时每行一个分数存入数组方便处理

在这里插入图片描述

标签:distance,java,上机,Point,double,作业,实验,100,方法
来源: https://blog.csdn.net/weixin_45741872/article/details/118793576

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有