一、好物推荐
给大家推荐三款蓝牙耳机,下面的链接可以直接购买:
1、https://item.taobao.com/item.htm?ft=t&id=643733003968
2、https://item.taobao.com/item.htm?ft=t&id=642849670304
3、https://item.taobao.com/item.htm?ft=t&id=639886208479
由于是新开的淘宝店铺,购买时联系客服,下单即可享受红包,红包 不大也是一片心意哟。虽然是新店,但是质量是有保证的哦!
二、题目描述
编写一个通过接口实现不同应用情况下计算平均分的程序,具体要求如下:
- 1、 编写一个ComputerAverage接口,接口有一个求平均分的抽象方法average,方法的参数为double类型的数组。
- 2、定义Gymnastics类和School类,它们都是ComputerAverage的实现类,Gymnastics类中的平均分方法为计算体育比赛中选手的平均成绩,具体算法是去掉一个最低分,去掉一个最高分,然后对剩余的数求平均分。
- 3、School类中的平均分为计算学生考试成绩的平均分,具体算法是分数的和除以总的科目数
- 4、要求:在主类中声明ComputerAverage的对象,并使用为上转型对象,实现ComputerAverage的对象调用average方法, 实现多态,同样的两条语句实现两种不同计算平均分的方法。输入的成绩为一组数,数据的个数和具体的数据从键盘输入。
三、代码实现
t i=1;i<date.length;i++) {
if(date[i]>max)
max=date[i];
else if(date[i]<min)
min=date[i];
sum=sum+date[i];
}
return (sum+date[0]-max-min)/(date.length-2);
}
}
class School implements Computeraverage{
public double average(double []date) {
double sum=0;
for(int i=1;i<date.length;i++) {
sum=sum+date[i];
}
return (sum+date[0])/date.length;
}
}
public class Test {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
Computeraverage ave;
int n;
n=in.nextInt();
double[] date=new double[n];
for(int i=0;i<n;i++)
date[i]=in.nextDouble();
ave=new Gymnastics();
System.out.println("体育比赛平均成绩:"+ave.average(date));
ave=new School();
System.out.println("考试平均成绩:"+ave.average(date));
in.close();
}
}