나는 수업을위한 프로그램을 작성하고 있으며, 사용자에게 몇 명의 학생이 얼마나 많은 수의 시험을 보았는지 묻습니다. 그런 다음 for 루프를 사용하여 이전에 입력 한 내용을 기반으로 각 학생의 이름과 시험 점수를 묻습니다. 일단 입력하면 평균 시험 점수와 다른 몇 가지 사항이 제공됩니다. 내가 겪고있는 문제는 테스트 점수의 평균을 취하는 방법을 알 수 없다는 것입니다. 내 프로그램이 사용자가 입력 한 테스트 점수를 읽은 다음 평균을 취할 수는 없습니다. 사전에 도움을 주셔서 감사합니다. 공백으로 구분 된 문자열에서문자열에서 숫자를 공백으로 구분하여 추가
import java.util.Scanner;
public class GradeCalculator {
public static void main(String[] args){
//Define Variables
int Students;
int Exams;
int Sum = 0;
int ExamAverage = 0;
String ExamScores;
String StudentName;
//Create Scanner
Scanner s = new Scanner(System.in);
//Print the First Block
System.out.println("Welcome to GradeCalculator!");
System.out.println("");
System.out.println("Please enter the number of students: ");
Students = s.nextInt();
System.out.println("Please enter the number of exams: ");
Exams = s.nextInt();
s.nextLine();
System.out.println("- - - - - - - - - - - - - - - - - - - -");
//For Loop
for (int i = 1; i<=Students; i++){
System.out.println("Enter Student " + i + "'s name: ");
StudentName = s.nextLine();
System.out.println("Enter exam scores: ");
ExamScores = s.nextLine();
Sum+=Integer.parseInt(ExamScores);
ExamAverage = Sum/Exams;
System.out.println("Grade Statistics for " + StudentName);
System.out.println("\t Average: " + ExamAverage);
System.out.println("\t Letter Grade: ");
System.out.println("\t"+ StudentName + " gets a ");
System.out.println("- - - - - - - - - - - - - - - - - - - -");
}
//Print the Last Block
System.out.println("Class Statistics:");
System.out.println("\t Average: ");
System.out.println("\t Lowest: ");
System.out.println("\t Highest: ");
System.out.println("");
System.out.println("Done, Good Bye!");
}
}
첫 번째 단계 : 문제를 분해. 문제를 구성 단계로 분해 한 다음 한 번에 하나씩 각 단계를 해결하십시오. –
ExamAverage를 루프 외부로 옮깁니다. 또한 시험을 늘리지 않습니다. – OldProgrammer