从一个类到另一个类的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 
+1

那么问题在哪里呢? –

+0

在moyenne我不能将moernene的成绩转移到moyenne来制作所有20名学生的平均值请注意,noter是计算每个学生的所有成绩1 x 1 – studentofjava

+0

这是我现在正在尝试的: – studentofjava

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;