从一个类到另一个类的Java访问信息
问题描述:
我正在做我的功课,我目前正在努力把noter()中的注释和compt放到moyenne()中,这样我就可以使输入的注释在一个表中的平均值20.从一个类到另一个类的Java访问信息
谁愿意来检查谷歌驱动器链接为:(PDF在法国做什么):All the informations here
这里是诺特()的每个
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;
}
而且完整的代码,所以你看到的桌子上我说的是:在方法 直接分配平均(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,你可以这样做)像这样:
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;
那么问题在哪里呢? –
在moyenne我不能将moernene的成绩转移到moyenne来制作所有20名学生的平均值请注意,noter是计算每个学生的所有成绩1 x 1 – studentofjava
这是我现在正在尝试的: – studentofjava