IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Probleme avec quelque tableaux (je suis bloqué)


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 12
    Points
    12
    Par défaut Probleme avec quelque tableaux (je suis bloqué)
    Bonjour a tous,

    Je suis bloque depuis une semaine avec un devoir que je dois remettre demain:

    L'objectif, c'est d'afficher un relevé de notes avec le nom, prenom des eleves, avec les notes, pour chaque matier, et la somme de la note.

    Le probleme c'est que l'on doit entrer: nom, prenom, les_matieres, et les_notes

    grace a l'objet Scanner;

    j'arrive a rentrer les noms, les prenom, les matieres, mais pour affecter chaque eleve a la liste des matieres et ensuite ajouter la notes je suis bloque la.

    Je vous presente ce que j'avais fais:


    Class Etudiant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package finsession;
     
    import java.util.Scanner;
     
    /**
     *
     * @author 
     */
    public class Etudiant {
        private String nom;
        private String prenom;
        private int nbNote = 0;
        private int sommeNote =0;
        private int matricule;
     
     
        @Override
        public boolean equals(Object obj) {
            if (obj == null) {
                return false;
            }
            if (getClass() != obj.getClass()) {
                return false;
            }
            final Etudiant other = (Etudiant) obj;
            if (this.matricule != other.matricule) {
                return false;
            }
            return true;
        }
     
        @Override
        public int hashCode() {
            int hash = 7;
            return hash;
        }
     
     
     
     
        public void readInput()
        {
        	System.out.println("Entre le nom  de l'etudiant: ");
        	Scanner keyboard = new Scanner(System.in);
        	nom = keyboard.nextLine();
     
        	System.out.println("Entre le prenom  de l'etudiant: ");
          	prenom = keyboard.nextLine();
     
        	System.out.println("Entre la matricule   de l'etudiant: ");
           	matricule = keyboard.nextInt();
         }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package finsession;
     
    import java.util.Scanner;
    /**
     *
     * @author 
     */
    public class Cours {
     
        private String nomCours;
        Scanner keyboard = new Scanner(System.in);
     
    public void readInput1(){
     
        System.out.println("Entrer le nom du cours");
        nomCours = keyboard.nextLine();
    }
     
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package finsession;
    import java.util.Scanner;
    /**
     *
     * @author 
     */
    public class Utilitaires {
        private String[] students= new String[5];
        private int codeCours;
        private static final int MAXCOURS=5;
        private  int nbreDeCours;
        private Etudiant[] equipe;
        private Cours[] lescours;
        private int nombreOfStudents;
     
     
    Scanner keyboard = new Scanner(System.in);
     
     
    public void getDonneEtudiant()
        {
        System.out.println("Entrer le nombre d'etudiant:");
        nombreOfStudents = keyboard.nextInt();
        equipe  = new Etudiant[nombreOfStudents + 1];
        for(int i=1; i<=nombreOfStudents; i++)
        {
            equipe[i]= new Etudiant();
            System.out.println("Entre le non de l'eleve" + i);
            equipe[i].readInput();
            System.out.println();
        }
    }
     
    public void getCoursEtudiant(Cours courschoisi)
        {
         for(int i=1; i<=nbreDeCours; i++)
         {
             courschoisi = lescours[i];
     
            }
    }
     
    public void getDonneCours()
        {
        System.out.println("Entrer le nombre de cours" );
        nbreDeCours = keyboard.nextInt();
        lescours  = new Cours[nbreDeCours + 1];
        for(int i=1; i<=nbreDeCours; i++)
        {
            lescours[i] = new Cours();
            System.out.println("Entre le nom du cours "+ i);
            lescours[i].readInput1();
            System.out.println();
        }
     
     
    }
    public void incriptionAuCours()
        {
        for(int i=1;i<= nbreDeCours; i++){
            for(int j=1; j<=nombreOfStudents; j++ ){
                System.out.println("nombre de cours"+ nbreDeCours + "nombreOfStudents " +nombreOfStudents );
            }
        }
     
    }
     
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package finsession;
     
    /**
     *
     * @author 
     */
    public class Main {
     
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args) {
     
     
            Utilitaires clerk = new Utilitaires();
            clerk.getDonneEtudiant();
            clerk.getDonneCours();
     
     
        }
     
    }
    Si vous avez d'autres idées je suis partant! Merci deja
    Sauvez moi mes amis

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    je suis arrive a faire entrer les notes wow.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public void ajouterLesNotes()
        {
        lesnotes  = new Note[nombreOfStudents + 1];
          for(int i=1;i<= nombreOfStudents; i++){
            for(int j=1; j<=nbreDeCours; j++ ){
              lesnotes[i]= new Note();
               System.out.print("Note-> " + lescours[j].getNomCours()+ "Pour eleve " + equipe[i].getNom()+ "\n");
                lesnotes[i].readInput2();
            }
        }
     
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
       public void readInput2()
        {
        System.out.println("Entrer la note");
        noteCours = keyboard.nextInt();
       }
    Il ne me reste plus qu'a les afficher !

    On n'est mieux servi que par soi meme!

    Si vous avez d'autres idees, merci

  3. #3
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    Il faudrait créer une nouvelle classe "AssociationEleveMatiere"
    Ensuite Ajouter un tableau ou une liste d'"AssociationEleveMatiere" dans la classe Utilitaires.
    Enfin, toujours dans la classe Utilitaires ajouter une méthodes "attribuerNotes"
    Dans cette méthodes, tu affiches toutes les matières et tu demande à l'utilisateur d'eux choisir une. Genre :
    Choisissez une matière :
    1/ Math 2/Physique 3/Histoire


    Et l'utilisateur doit être 1,2 ou 3.
    Tu fais la même chose pour les élèves.
    Tu demande ensuite la note.

    Et le tour est joué, il ne te reste plus qu'à créer une nouvelle d'instance d'"AssociationEleveMatiere" avec les informations prélevés.
    Tu la stock dans ta liste. Et tu met à jour les informations de l'élève (nbNotes,...)
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Merci

    J'ai deja les classes: Etudiants, Note,Matieres,Utilitaires(dans laquelle sont reunis les methodes pour les 3 classes) et la class Main qui fait les requetes finales.

    Je ne sais pas si je suis la bonne voie parce que j'ai n'ai pas presenter l'option de choisir les cours.

    j'ai seulement ajouter les cours puis j'ai demander de mettre les notes.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Voici ma classe utilitaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
     
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package finsession;
    import java.util.ArrayList;
    import java.util.Scanner;
    /**
     *
     * @author 
     */
    public class Utilitaires {
     
        private static class Arraylist {
     
            public Arraylist() {
            }
        }
        private String[] students= new String[5];
        private int codeCours;
        private static final int MAXCOURS=5;
        private  int nbreDeCours;
        private Etudiant[] equipe;
        private Cours[] lescours;
        private Note[] lesnotes;
        private int nombreOfStudents;
     
       // ArrayList courList = new Arraylist;
     
     
    Scanner keyboard = new Scanner(System.in);
     
     
    public void getDonneEtudiant()
        {
        System.out.print("Entrer le nombre d'etudiant:");
        nombreOfStudents = keyboard.nextInt();
        equipe  = new Etudiant[nombreOfStudents + 1];
        for(int i=1; i<=nombreOfStudents; i++)
        {
            equipe[i]= new Etudiant();
            System.out.println("Donnee pour l'Etudiant" + i);
            equipe[i].readInput();
            System.out.println();
     
        }
    }
     
    public void getCoursEtudiant(Cours courschoisi)
        {
         for(int i=1; i<=nbreDeCours; i++)
         {
             courschoisi = lescours[i];
     
            }
    }
     
    public void getDonneCours()
        {
        System.out.println("Entrer le nombre de cours" );
        nbreDeCours = keyboard.nextInt();
        lescours  = new Cours[nbreDeCours + 1];
        for(int i=1; i<=nbreDeCours; i++)
        {
            lescours[i] = new Cours();
            System.out.println("Entre le nom du cours "+ i);
            lescours[i].readInput1();
            System.out.println();
        }
     
     
    }
    public void incriptionAuCours()
        {
        lesnotes  = new Note[nombreOfStudents + 1];
          for(int i=1;i<= nombreOfStudents; i++){
            for(int j=1; j<=nbreDeCours; j++ ){
              lesnotes[i]= new Note();
               System.out.print("Note-> " + lescours[j].getNomCours()+ "Pour eleve " + equipe[i].getNom()+ "\n");
                lesnotes[i].readInput2();
            }
        }
     
    }
     
    //double[][][] tabMatrix = new double[10][][];
     
    }


    ma classe Note

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
     
    package finsession;
    import java.util.Scanner;
    /**
     *
     * @author goldoni
     */
    public class Note {
       private  int noteCours;
       private int sommeDeNote;
       private int moyenneDeNote;
     
       Scanner keyboard = new Scanner(System.in);
     
       public void readInput2()
        {
        System.out.println("Entrer la note");
        noteCours = keyboard.nextInt();
       }
     
        public int getMoyenneDeNote() {
            return moyenneDeNote;
        }
     
        public int getNoteCours() {
            return noteCours;
        }
     
        public int getSommeDeNote() {
            return sommeDeNote;
        }
     
     
    }
    Est il toujours necessaire de creer la classe AssociationEtudiantMatieres ?
    Merci

  6. #6
    Membre expérimenté Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Points : 1 540
    Points
    1 540
    Par défaut
    ça dépend de comment tu veux faire la chose (je sais ma phrase ne sert à rien)

    ça ressemble fortement à une base de donnée ce que tu fais. Enfin je veux dire que tu stocke des données dans différentes classes (tables en BDD) et tu essaye des les liés.

    Ta classe note est relié à quoi? à une matière? à un élèves?

    Personnellement j'aurais fait comme cela ( pas forcement la meilleur façon, juste ma façon).

    Classe élève : contient les informations des élèves
    Classe matières : contient les informations des matières
    Classe AssociationEleveMatière : contient 1 instance d'élèves, 1 instance de matières et un attributs note ( ou un tableau de note pour toutes les note de l'élève dans cette matière )
    Classe utilitaires : contient les instance d'élèves et de matières + un tableau (ou liste) d'instance d'associationEleveMatière.
    Et dans utilitaires tu as des méthodes et des fonctions pour faire les traitements du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    public void ajouterNote(Eleve e, matiere m, note n){
    //Ajoute une instance AssociationEleveMatiere dans le tableau (ou la liste)
    }
     
    public int getMoyenneEleve(Eleve e){
    //Parcours des associationeEleveMatiere et recupération des notes en lien avec l'élève
    //Puis fait la moyenne
    return moyEleve
    }
     
    public int getMoyenneMatiere(matiere m){
    //pareil que getMoyenneEleve mais avec les matières
    return moyMatiere
    }
    Classe Utilitaires : contient les instance d'élèves et de matières dans des
    Il était une fois [...] Et ils vécurent heureux et eurent beaucoup d'enfants!

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 12
    Points
    12
    Par défaut
    Merci je vais essayer de me servir de tes idees.

Discussions similaires

  1. probleme avec des tableaux et autres
    Par raphy75 dans le forum Langage
    Réponses: 6
    Dernier message: 11/04/2007, 20h41
  2. Probleme avec des tableaux
    Par vivien313131 dans le forum C
    Réponses: 8
    Dernier message: 07/02/2007, 11h33
  3. Réponses: 1
    Dernier message: 11/05/2006, 10h19
  4. Réponses: 1
    Dernier message: 10/05/2006, 17h55
  5. [C] Probleme avec le tableaux de 2 dimension
    Par moniphal dans le forum C
    Réponses: 4
    Dernier message: 27/10/2005, 12h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo