实验目的是使用Java中的继承与接口实现歌手大赛
实验代码
CompurerAverage.java
package lab2;
public interface CompurerAverage {
public double average(double x[]);
}
SongGame.java
package lab2;
public class SongGame implements CompurerAverage {
public double average(double x[]) {
int count = x.length;
double aver = 0, temp = 0;
for (int i = 0; i < count; i++) {
for (int j = i; j < count; j++) {
if (x[j] < x[i]) {
temp = x[j];
x[j] = x[i];
x[i] = temp;
}
}
}
for (int i = 1; i < count - 1; i++) {
aver = aver + x[i];
}
if (count > 2) aver = aver / (count - 2);
else {
aver = 0;
}
return aver;
}
}
School.java
package lab2;
public class School implements CompurerAverage {
double sum = 0;
double avery;
@Override
public double average(double[] x) {
for (int i = 0; i < x.length; i++) {
sum += x[i];
avery = sum / x.length;
}
return avery;
}
}
Estimator.java
package lab2;
public class Estimator {
public static void main(String args[]) {
double a[] = {9.89, 9.88, 9.99, 9.12, 9.69, 9.76, 8.97};
double b[] = {56, 55.5, 65, 50, 51.5, 53.6, 70, 49, 66, 62, 46};
CompurerAverage computer;
computer = new SongGame();
double result = computer.average(a);
System.out.printf("%n");
System.out.printf("歌手最后得分:%5.3f\n", result);
computer = new School();
result = computer.average(b);
System.out.printf("学生平均体重:%-5.2f kg", result);
}
}