您的位置:首页 > 编程语言 > Java开发

java基础作业一

2017-12-06 14:32 405 查看

作业一

给定一个int类型的数组,要求:

1.求和

2.求平均数(int)

3.求最大值,最小值

4.打印这个数组中数据

代码如下:

package homework2;

public class ComputeArrayDemo {

public static void main(String[] args) {
/**
* 给定一个int类型的数组,要求:
* 1.求和
* 2.求平均数(int)
* 3.求最大值,最小值
* 4.打印这个数组中数据
*/
int[] a={12,25,7,65,32,55};
sum(a);//求数组的和
average(a);//求数组的平均值
max(a);//求数组中的最大值
min(a);//求数组中的最小值
print(a);//打印数组

}
private static void print(int[] a) {
// 打印数组
System.out.print("数组打印结果为:");
for (int i = 0; i < a.length; i++) {
System.out.print(a[i]+" ");
}

}
private static void min(int[] a) {
// 求最小值
int min1=a[0];
for (int i = 0; i < a.length; i++) {
if(a[i]<min1){
min1=a[i];
}
}
System.out.println("数组最小值为:"+min1);
}
private static void max(int[] a) {
// 求数组中的最大值
int max1=a[0];
for (int i = 0; i < a.length; i++) {
if(a[i]>max1){
max1=a[i];
}
System.out.println();
}
System.out.println("数组中最大值为:"+max1);
}
private static void average(int[] a) {
// 数组求平均值(int)
int y = 0,z=0;

for (int i = 0; i < a.length; i++) {
y+=a[i];
}
z=y/a.length;
System.out.println("数组平均值为:"+z);

}
private static void sum(int[] arr) {
// 求和方法
int x=0;
for (int i = 0; i < arr.length; i++) {

x+=arr[i];
}
System.out.println("数组求和结果为:"+x);

}

}


运行结果:

数组求和结果为:196

数组平均值为:32

数组中最大值为:65

数组最小值为:7

数组打印结果为:12 25 7 65 32 55

作业二

给定两个整型数组a和b,找出其共同元素。

eg:int[] a={23,12,45,11};

int[] b={99,33,12,45,67,11}

要找出:12,45,11

代码如下:

package homework2;

public class ElementFundDemo {

public static void main(String[] args) {
/**
* 给定两个整型数组a和b,找出其共同元素。
* eg:int[] a={23,12,45,11};
* int[] b={99,33,12,45,67,11};
* 要找出:12,45,11
*/
int[] a={23,12,45,11};
int[] b={99,33,12,45,67,11};
fund(a,b);
}

private static void fund(int[] a,int[] b) {
/*
*  查找相同元素
*  并各自打印出对应的12,45,11
*/
System.out.println("数组中相同的元素为:");
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < b.length; j++) {
if(a[i]==b[j]){
System.out.print(a[i]+"  ");
}
}
}

}

}


代码运行结果:

数组中相同的元素为:

12 45 11

作业三

在某歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,

去掉一个最低分,然后剩余的8位评委的分数进行平均,就是该选手的最终得分。

10位评委对某歌手的打分分别是:78、60、85、96、77、66、60、82、88、85。

计算该歌手的最终得分。

代码如下:

package homework2;

import java.util.Scanner;

public class SingerScoreDemo {

public static void main(String[] args) {
/*在某歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,去掉一个最低分,
* 然后剩余的8位评委的分数进行平均,就是该选手的最终得分。
* 10位评委对某歌手的打分分别是:78、60、85、96、77、66、60、82、88、85.计算该歌手的最终得分。
*/
Scanner scan= new Scanner(System
4000
.in);
float   a=0;
float[] b=new float[10];
int i=0;
for ( i = 0; i < b.length; i++) {
System.out.println("请分别输入十位评委给出的分数:");
a=scan.nextInt();
b[i]=a;

}
for (int j = 0; j < b.length; j++) {
System.out.print(b[j]+" ");
}
float score=finalScore(b);
System.out.println("该歌手最终成绩为:"+score);
scan.close();
}

private static float finalScore(float[] b) {
// 计算歌手最终成绩
float max=b[0];
for (int i = 0; i < b.length; i++) {
if(b[i]>max){
max=b[i];
}
}
float min=b[0];
for (int i = 0; i < b.length; i++) {
if(b[i]<min){
min=b[i];
}
}
System.out.println();
System.out.print("去掉一个成绩中的最大值:"+max+"去掉一个成绩中的最小值:"+min);
System.out.println();
float average=0;
float sum=0;
for (int i = 0; i < b.length; i++) {
sum+=b[i];
average=(sum-max-min)/(b.length-2);
}

return average;
}

}


运行结果:

请分别输入十位评委给出的分数:

78

请分别输入十位评委给出的分数:

60

请分别输入十位评委给出的分数:

85

请分别输入十位评委给出的分数:

96

请分别输入十位评委给出的分数:

77

请分别输入十位评委给出的分数:

66

请分别输入十位评委给出的分数:

60

请分别输入十位评委给出的分数:

82

请分别输入十位评委给出的分数:

88

请分别输入十位评委给出的分数:

85

78.0 60.0 85.0 96.0 77.0 66.0 60.0 82.0 88.0 85.0

去掉一个成绩中的最大值:96.0去掉一个成绩中的最小值:60.0

该歌手最终成绩为:77.625

作业四

兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。

初始有一对小兔子,假设所有兔子都不死,计算前12个月每个月的兔子对数。

分析:

第一个月:1对

第二个月:1对

第三个月:2对

第四个月:3对

第五个月:5对

等等……..

代码如下:

package homework2;

import java.util.Scanner;

public class RabbitDemo {

public static void main(String[] args) {
/**
* 兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。
* 初始有一对小兔子,假设所有兔子都不死,计算前12个月每个月的兔子出生的对数。
* 分析:
* 第一个月:1对
* 第二个月:1对
* 第三个月:2对
* 第四个月:3对
* 第五个月:5对
*......
*
*/
int count=0;
System.out.println("请输入要计算兔子对数的月份:");
Scanner scan=new Scanner(System.in);
int month=scan.nextInt();
for (int i = 1; i <= month; i++) {
count=f(i);
System.out.print("第"+i+"月出生的兔子数量:");
System.out.println(count+"对 ");
}
System.out.println();
scan.close();
}

private static int f(int x) {
// 计算每个月出生的兔子的对数
if (x == 1 || x == 2){
return 1;
}
else if(x>2) {
return f(x - 1) + f(x - 2);
}
return x;
}

}


代码运行结果:

请输入要计算兔子对数的月份:

12

第1月出生的兔子数量:1对

第2月出生的兔子数量:1对

第3月出生的兔子数量:2对

第4月出生的兔子数量:3对

第5月出生的兔子数量:5对

第6月出生的兔子数量:8对

第7月出生的兔子数量:13对

第8月出生的兔子数量:21对

第9月出生的兔子数量:34对

第10月出生的兔子数量:55对

第11月出生的兔子数量:89对

第12月出生的兔子数量:144对
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java