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 :

Calcule la moyenne de n matières


Sujet :

avec Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 135
    Par défaut Calcule la moyenne de n matières
    Salut tous le monde

    je veux écrire une classe étudiant, chaque étudiant a n matières et chaque matières a n contrôles et chaque contrôle a un coefficient.
    voici mon essai :
    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
    import java.util.Scanner;
    public class Etudiant {
        Scanner src = new Scanner(System.in);
        public String Nom,Num;
        class Matiere{
            String Matieres[] = new String[3];
            double Notes[] = new double [3],Controles[] = new double [2];
            int Coef[] = new int [2];int i =0;
            public Matiere(){
                System.out.println("Donnez le nom de la matiére : ");
                Matieres[i] = src.nextLine(); 
                System.out.println("Résultat du premiér controle : ");
                Controles[0] = src.nextDouble();
                System.out.println("son coefficient : ");
                Coef[0] = src.nextInt();
                System.out.println("Résultat du deuxiéme controle : ");
                Controles[1] = src.nextDouble();
                System.out.println("son coefficient : ");//ضاربه
                Coef[1] = src.nextInt();
                Notes[i] = ( (Controles[0]*Coef[0]) + (Controles[1]*Coef[0]) )/2;
                System.out.println("Moyenne de cette mayiére : "+Notes[i]);
           }   
        }
        public Etudiant(){
            System.out.println("Quel est votre nom ? ");
            Nom = src.nextLine();
            System.out.println("Votre num ? ");
            Num = src.nextLine();
        }
     
        public static void main(String args[]){
            Etudiant Etu_1 = new Etudiant();
            Matiere Matr_1 = Etu_1.new Matiere();
        }
    }

    Quelles sont vos suggestions et idées ?

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2010
    Messages : 394
    Par défaut
    Citation Envoyé par khaled_prg Voir le message
    chaque étudiant a n matières et chaque matières a n contrôles et chaque contrôle a un coefficient.
    Je présume que ce n'est pas le même n, non ?

    Citation Envoyé par khaled_prg Voir le message
    Quelles sont vos suggestions et idées ?
    Ce dépend. C'est quoi le problème ? Tu veux savoir comment calculer ta moyenne ? Tu veux savoir comment faire pour récupérer les valeurs de tes matières/contrôles ?

    D'une manière générale, je pense qu'il vaudrait mieux débuter par mieux définir tes classes (c'est-à-dire travailler un une classe Etudiant.java, une Matiere.java, une Controle.java et une classe principal, plutôt que de tout coller dans la même).

    Mako.

  3. #3
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Par défaut
    Citation Envoyé par Mako 5013 Voir le message
    Je présume que ce n'est pas le même n, non ?

    D'une manière générale, je pense qu'il vaudrait mieux débuter par mieux définir tes classes (c'est-à-dire travailler un une classe Etudiant.java, une Matiere.java, une Controle.java et une classe principal, plutôt que de tout coller dans la même).

    Mako.
    De même. Définit des classes séparées avec juste leur variables/constructeurs/méthodes vide. TU y verras plus clair après.

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 135
    Par défaut
    Je présume que ce n'est pas le même n, non ?
    Oui, c'est pour être plus claire on dit :
    chaque étudiant a n matières et chaque matière a m contrôles et chaque contrôle a un coefficient différent.

    Ce dépend. C'est quoi le problème ? Tu veux savoir comment calculer ta moyenne ? Tu veux savoir comment faire pour récupérer les valeurs de tes matières/contrôles ?
    je veux calculer la moyenne de contrôles de chaque matière ainsi que la moyenne de la matière.

    D'une manière générale, je pense qu'il vaudrait mieux débuter par mieux définir tes classes (c'est-à-dire travailler un une classe Etudiant.java, une Matiere.java, une Controle.java et une classe principal, plutôt que de tout coller dans la même).
    c'est une bonne idée mais le problème c'est que pour chaque objet Étudiant on doit créer n objets matières et chaque objet matière on créera m objets coefficient donc pour un seul objet étudiant on aura n*m objets donc c'est pas optimisé en réalité !
    c'est ce que je pense. quel est ton avis la dessus ?

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2010
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2010
    Messages : 394
    Par défaut
    Citation Envoyé par khaled_prg Voir le message
    je veux calculer la moyenne de contrôles de chaque matière ainsi que la moyenne de la matière.
    Je me suis mal exprimé. J'avais bien compris ce que tu voulais faire (quel était ton but), mais je demandais plutôt ce sur quoi tu coincais : la calcul à proprement parler, etc.

    Citation Envoyé par khaled_prg Voir le message
    c'est une bonne idée mais le problème c'est que pour chaque objet Étudiant on doit créer n objets matières et chaque objet matière on créera m objets coefficient donc pour un seul objet étudiant on aura n*m objets donc c'est pas optimisé en réalité !
    c'est ce que je pense. quel est ton avis la dessus ?
    Dans ce cas là, autant ne pas utiliser un langage orienté objet si c'est pour ne pas utiliser d'objets... En outre, tes objets seront relativement simples tout de même, et à moins que chaque étudiant ait dix milliards de matières, et dix milliards de contrôles pour chaque matière, je pense que cela devrait aller...

    Mako.

  6. #6
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Par défaut
    Que tu crées ou pas les objets la taille de ce que tu vas sauvegarder seras a peu prés la même.

    Que tu ais une liste de String ou un une liste d'objet contenant un String c'est pareil. La différence est plus que négligeable, c'est pas la dessus que tu vas gagner quoi que ce soit en perf ou mémoire.

    Sauf que penser objet permet une bien meilleure évolutivité.

  7. #7
    Membre confirmé
    Inscrit en
    Octobre 2008
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 71
    Par défaut
    n'oublie pas que pour instancier c'est new() .
    déjà dans ton analyse tu te trompes car ce n'est pas n*m mais plutôt x étudiant(dans ta vision, car je ne suis même pas sur que si tu optimises l'algo de tes objets . tu utiliseras moins de mémoire que le code que tu présentes) .
    utilise une Collection pour chaque étudiant ou une collection de collection si tu veux pour manipuler tes données

  8. #8
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 969
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 969
    Par défaut
    Koe,

    +1

    De plus, ce genre d'exercice n'est pas là pour juger la capacité à optimiser (d'ailleurs, ce but est absurde quand on apprend), mais pour apprendre Java, DONC l'utilisation de classes.

  9. #9
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Par défaut
    L'optimisation ce n'est que le calcul de la complexité d'un algo. Et pour moi cela est transversal à l'apprentissage de Java.

  10. #10
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2012
    Messages : 135
    Par défaut
    OK, c'est claire : )
    Je vous remercie infiniment pour votre aide.

Discussions similaires

  1. [MySQL] calcul moyenne d'une matière
    Par quomeiha dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 07/04/2011, 19h13
  2. [VBA-E] problème de calcul de moyenne
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/04/2006, 17h13
  3. Programmation Shell avec Red Hat Calcul de moyenne
    Par jcpoulard dans le forum Linux
    Réponses: 3
    Dernier message: 22/02/2006, 22h08
  4. methode qui calcul une moyenne du traffic
    Par siry dans le forum Développement
    Réponses: 7
    Dernier message: 05/05/2005, 17h16
  5. calculer une moyenne avec une requete externe
    Par allowen dans le forum Langage SQL
    Réponses: 3
    Dernier message: 27/01/2005, 16h02

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