Возникли проблемы с корректным выводом из оператора if
Здравствуйте, мне бы не помешала помощь с одной проблемой, которая у меня возникла. Пользователь должен ввести количество студентов, а затем ввести баллы, и я должен найти лучший результат и назначить оценку соответственно.
Оценка-это а, если оценка >= best-10
Оценка-B, если оценка >= best-20
Оценка-C, если оценка >= best-30
Оценка D, если оценка >= best-40
Класс F в противном случае
Моя программа не производит правильные оценки в данный момент, независимо от того, какие числа я ввожу.
Вот пример ввода и вывода:
Введите количество студентов: 4
Введите 4 балла: 45 90 78 23
Ученик 0 класса-это: а
Ученик 1 класса-это: а
Ученик 2 класса-это: а
Ученик 3 класса-это: с
Трудно сказать, определяется ли лучший результат, потому что он дает тот же результат другим числам, это происходит со многими другими числами в качестве входных данных.
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter the number of students: "); int students = input.nextInt(); int[] grades = new int [students]; System.out.print("Enter " + students + " scores: "); for(int i=0; i<students; i++){ grades[i] = input.nextInt(); } int max = grades[0]; for(int i = 0; i<grades.length; i++){ if(grades[i] > max){ max = grades[i]; } for(i = 0; i<grades.length; i++){ if (grades [i] >= max-10){ System.out.println("Student " + i + " grade is: A"); }else if (grades[i] >= max-20){ System.out.println("Student " + i + " grade is: B"); }else if (grades [i] >= max-30){ System.out.println("Student " + i + " grade is: C"); }else if (grades[i] >= max-40){ System.out.println("Student " + i + " grade is: D"); }else{ System.out.println("Student " + i + " grade is: F"); } } } } }
Что я уже пробовал:
Я попытался поставить еще один цикл for прямо перед моим оператором if, используя другую переменную (j вместо i), чтобы дифференцировать значение max и whats в моем операторе if, но я как бы застрял. Я новичок в java, так что любая помощь будет оценена по достоинству, и заранее благодарю вас :)