//第六章编程题(3)
package package2;
import java.lang.Exception;
import java.util.Scanner;
class IlleagelData extends Exception
{
public IlleagelData()
{
}
public IlleagelData(String message)
{
super(message);
}
}
public class Test3
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
Test3 t = new Test3();
final int N = 5;
int[] a = new int[N];
System.out.println("请依次输入" + N + "个同学的成绩");
try
{
t.ReaderDate(a, N);
}
catch(IlleagelData e)
{
e.printStackTrace();
System.exit(-1);
}
System.out.println("这" + N + "个同学的平均分为" + t.AveSource(a, N));
}
public void ReaderDate(int a[], int n) throws IlleagelData
{
int i;
int k;
Scanner scanner = new Scanner(System.in);
for(i = 0; i < n; i++)
{
try
{
k = scanner.nextInt();
if(k < 0)
{
throw new IlleagelData("同学的成绩只能是非负,请检查后重新输入,谢谢!");
}
a[i] = k;
}
catch(IlleagelData e)
{
e.printStackTrace();
i -= 1;
}
}
}
public float AveSource(int a[], int n)
{
int sum = 0;
float avever = 0;
int i;
for(i = 0; i < n; i++)
{
sum += a[i];
}
avever = (float)sum / n;
return avever;
}
}