Im Feldteil der ArrayPractice-Klasse Ich wollte int [] [] arr = new int [3] [Studenten] setzen; Ich habe einen Fehler bekommen und habe aufgegeben. Ich habe versucht, das Lesen so einfach wie möglich zu gestalten. Der Inhalt der Methode wurde basierend auf dem vorherigen Sequenzübungssatz geringfügig geändert.
ArrayExam.java
package JavaStudy;
//Üben Sie das Array, indem Sie die Methode teilen
//Output-Testergebnisse (Name des Probanden, durchschnittliche Punktzahl, höchste Punktzahl nach Fach, Anzahl der Schüler)
public class ArrayExam {
public static void main(String[] args) {
final int math = 0;
final int english = 1;
final int science = 2;
ArrayPractice t = new ArrayPractice(20);
t.startExam(math);
t.startExam(english);
t.startExam(science);
t.printResult(math);
t.printResult(english);
t.printResult(science);
}
}
ArrayPractice.java
package JavaStudy;
import java.util.Random;
//Die Methode für jede Artikelausgabe ist zusammengefasst
public class ArrayPractice {
final String[] SUBJECT= {"Arithmetik","Englisch","Wissenschaft"};
int students = 0;
int [][] arr;
//Erhalten Sie die Anzahl der Schüler in der Klasse, wenn Sie instanziieren
ArrayPractice(int students){
this.students = students;
arr = new int[3][students];
}
void printResult(int sub) {
//Das Ergebnis ausgeben
System.out.println("Das Prüfungsfach ist"+ SUBJECT[sub]+"ist.");
System.out.println("Die Anzahl der Schüler"+ students +"Es ist eine Person.");
System.out.println("Die durchschnittliche Punktzahl beträgt"+ resultAverage(sub)+"Es ist ein Punkt.");
System.out.println("Der höchste Punkt ist"+ getMax(sub)+"Es ist ein Punkt.");
System.out.println("-----------");
}
int getMax(int sub) {
//Geben Sie die höchste Punktzahl nach Betreff zurück
int max = 0;
for(int i = 0;i < students;i++) {
if(arr[sub][i] > max)
max = arr[sub][i];
}
return max;
}
void startExam(int sub) {
//Geben Sie eine zufällige Punktzahl (0 bis 100 Punkte) in die Betreffanordnung ein
Random random = new Random();
for(int i = 0;i < students ;i++)
arr[sub][i] = random.nextInt(101);
}
int resultAverage(int sub) {
//Gibt die durchschnittliche Punktzahl zurück
int sum = 0;
int average = 0;
for(int i =0;i < students;i++)
sum = sum + arr[sub][i];
average = sum/students;
return average;
}
}
Recommended Posts