Нужна помощь, пытаясь понять, что делает цикл for и как он работает - PullRequest
0 голосов
/ 28 сентября 2019

Я не понимаю, как работает цикл for и что он делает.Код предназначен для проекта, который усредняет результаты тестов пользователей и основан на том, сколько результатов тестов он хочет ввести.

Я знаю, что программа возвращает столько входных данных, которые запрашивает пользователь, но я не знаю, как это делает цикл for.Я пытаюсь понять, как он работает и что он делает.

import java.util.Scanner;
public class average
{
     public static String getLetterGrade(double average) {
    if (average < 60) {
        return "F";
    } else if (average < 70) {
        return "D";
    } else if (average < 80) {
        return "C";
    } else if (average < 90){
        return "B";
    }
     else;{
        return "A";
    }
}
   public static void main(String[] args){
   Scanner scan = new Scanner(System.in);
   System.out.println("Welcome, please type your first name. ");
   String name = scan.nextLine();
   System.out.println("Welcome, please type your last name. ");
   String last = scan.nextLine();
   int n;
   System.out.println("How many tests would you like the average of?");
   n = scan.nextInt();

        while(n<0)
        {
            System.out.println("Invalid input.");
            System.out.println("How many tests would you like the average 
            of?");
            n = scan.nextInt();
        }
   double sum = 0, grade;
   System.out.println("Enter " + n + " scores.");

   for(int i = 0;i<n;i++)
   {
    grade = scan.nextDouble();
    sum += grade;
    }

   double average = (sum/n);
   System.out.println("Okay " + name.charAt(0) + last.charAt(0) + ", Your 
   average score is " + (average));
   System.out.println("Your letter grade is " + getLetterGrade(average));

}

}

Программа работает нормально и не имеет ошибок.Я пытаюсь понять, как работает цикл for.

1 Ответ

0 голосов
/ 28 сентября 2019

цикл for пытается получить числа (баллы), по которым мы хотим вычислить среднее значение по ним.цикл for выполняется n раз, что является количеством входов (пользователь вводит это число в качестве входных данных).в своем теле он вызывает scan.nextDouble для получения номера nex из консоли.затем добавляет это число к сумме.

...