Я не могу понять, как рассчитать средний балл от введенного пользователем количества баллов. Я также не могу заставить его остановиться, за исключением входных данных более 100 или менее, чем 0. Может ли кто-нибудь показать мне, что я делаю неправильно? Благодарю.Нужна помощь в поиске среднего
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int sum = 0;
int inputNumber;
int numberExams;
float averageScore;
double max = 0;
double min = 101;
System.out.println("Enter the total number of exams you want a average");
numberExams = scan.nextInt();
System.out.println("Please enter " + numberExams + " numbers:");
for(int i = 1; i<=numberExams ;i++){
inputNumber = scan.nextInt();
sum = sum + inputNumber;
System.out.println();
if(inputNumber > max){
max = inputNumber;
}
if(inputNumber < min){
min = inputNumber;
}
if(inputNumber > -1 && inputNumber < 101){
sum = sum + inputNumber;
}
else{
System.out.println("You entered a number that wasn't in the range of 0 to 100");
}
}
averageScore = sum/numberExams;
System.out.println("The Max Exam Score is: " + max);
System.out.println("The Minimum Exam Score is: " + min);
System.out.println("The Average Exam Score is: " + averageScore);
}
}
Проверьте, что происходит с '' min' и max' при вводе недействительный входа. (Также вы всегда увеличиваете 'numberExams' на плохом вводе, а также на хорошем.) – usr2564301
Вы добавляете ввод дважды к сумме. – Tom
Вы должны подсчитать количество действительных входов. Возможно, вы намеревались 'averageScore = (double) sum/numberExams;' –