我正在做作业,目前正在尝试将 note 和 compt 放入 noter() 到 moyenne() 中,这样我就可以计算出 20 个表格中输入的笔记的平均值。
对于那些想要检查的人来说,Google 云端硬盘链接:(法语版 pdf):All the informations here
这里是每个成绩的 noter()
public static int noter() {
int compt = 0;
int note = 0;
Scanner sc = new Scanner(System.in);
do {
System.out.println("Veuillez entrer la note de l'etudiant: ");
note = sc.nextInt();
compt++;
} while (note != -1);
System.out.println(compt);
return compt;
}`
这里是 moyenne() 计算所有学生成绩的平均值
public static int moyenne() {
int etudiant[i].moyenne = 0;
etudiant[i].moyenne = etudiant[i].noter.note/ etudiant[i].noter.compt;
return etudiant[i].moyenne;
}
还有完整的代码,以便您看到我正在讨论的内容的表格:
import java.util.Scanner; // Utiliser mode console
public class GestEtudiant {
private static String code;
static Etudiant[] etudiant = new Etudiant[20]; // Attributs statiques
static int nbreEtudiants; // comment mettre pour ne depasse pas 20
// Méthodes statiques
public static int ajoutEtudiant() {
String nomTemp, prenomTemp;
int anneeNaisTemp;
Scanner sc = new Scanner(System.in);
//Etudiant monEtudiant = new Etudiant();
for (int i = 0; i < etudiant.length; i++) {
System.out.println("Entrer les informations suivantes:\n1-Nom:\n2-Prenom:\n3-Annee de naissance:");
nomTemp = sc.next();
prenomTemp = sc.next();
anneeNaisTemp = sc.nextInt();
etudiant[i] = new Etudiant(nomTemp, prenomTemp, anneeNaisTemp);
System.out.println(etudiant[i].code);
if (i > 20) {
System.out.println("Une erreur c'est produite, la limite d'etudiants a ete depassee, l'ajout n'a pas eu lieu ");
}
}
return 0;
}
public static int noter() {
int compt = 0;
int note = 0;
Scanner sc = new Scanner(System.in);
do {
System.out.println("Veuillez entrer la note de l'etudiant: ");
note = sc.nextInt();
compt++;
} while (note != -1);
System.out.println(compt);
return compt;
}
public static int moyenne() {
int etudiant[i].moyenne = 0;
etudiant[i].moyenne = etudiant[i].noter.note/ etudiant[i].noter.compt;
return etudiant[i].moyenne;
}
public static double meilleur() {
// A compléter ..
return 0;
}
public static double tauxEchec() {
// A compléter ..
return 0;
}
// Méthode principale
public static void main(String args []) {
Scanner sc = new Scanner(System.in);
int option;
//Menu répétitif
do {
System.out.println("Quelle opération voulez-vous effectuer?\n(1) Inscrire un étudiant.\n(2) Entrer les notes des étudiants.\n(3) Afficher les étudiants.\n(4) Afficher les statistiques.\n(5) Quitter l'application.\n\n");
option = sc.nextInt();
switch(option) {
case 1: { //Inscrire
// A compléter ..
break;
}
case 2: { //Noter
// A compléter ..
break;
}
case 3: { //Afficher
// A compléter ..
break;
}
case 4: { //Statistiques
// A compléter ..
break;
}
case 5: { //Quitter
// A compléter ..
break;
}
default: {
System.out.println("Choix Invalide - doit être compris entre 1 et 5");
}
} // fin du switch
} while (option != 5); // fin de la boucle
} //fin main
} //fin classe
最佳答案
Alors,你可以这样做: 在方法 note() 中直接分配平均值(moyenne),如下所示:
do {
System.out.println("Veuillez entrer la note de l'etudiant: ");
note += sc.nextInt(); // note here you have to add all values
compt++;
} while (note != -1);
System.out.println(compt);
etudiant[i].moyenne = note / compt;
关于Java从一个类到另一个类访问信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42559553/