2017-03-02 8 views
2

Ich mache meine Hausaufgaben und ich versuche gerade notieren und compt in noter() zu moyenne(), so kann ich einen Durchschnitt der eingegebenen Noten, die in einer Tabelle sein werden von 20.Java-Zugangsinformationen von einer Klasse zu einer anderen Klasse

Google-Laufwerk Link für diejenigen, die überprüfen will: (pdf für das, was auf französisch zu tun): All the informations here

Hier ist noter() für die Klassen jedes Hier

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; 
    }` 

ist moyenne() für den Durchschnitt aller Noten der Schüler

public static int moyenne() { 
int etudiant[i].moyenne = 0; 

    etudiant[i].moyenne = etudiant[i].noter.note/ etudiant[i].noter.compt; 
    return etudiant[i].moyenne; 
} 

Auch der vollständige Code so sehen Sie die Tabelle von dem, was ich spreche:

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

Also wo ist das Problem? –

+0

bei Moyenne kann ich nicht die Noten von Noter zu Moyenne "übertragen", um den Durchschnitt aller 20 Schüler zu machen Beachten Sie, dass noter alle Noten jedes Schülers zählt 1 mal 1 – studentofjava

+0

Hier ist, was ich gerade versuche : – studentofjava

Antwort

0

Alors, Sie können dies tun: assign direkt die durchschnittliche (moyenne) in Verfahren noter () wie folgt:

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; 
Verwandte Themen