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 :

méthode qui calcule et renvoie la moyenne d'une liste de notes


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut méthode qui calcule et renvoie la moyenne d'une liste de notes
    Bonjour, je viens de débuter en programmation et je suis en train d'écrire un programme qui a des classes qui permettent de représenter des étudiants (classe Student) et des notes (classe Grades).
    Plus précisément, j'écris une méthode "public static Grade averageGrade(List<Grade> grades) :" qui doit calculer et renvoyer la moyenne d'une liste de notes. Le titre de cette méthode ne peut pas changer.

    Vvoici le code avant d'écrire cette méthode :

    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
    public class Grade {
     
      private static final int MAXIMUM_GRADE = 20;
      private final double value;
     
     
      public Grade(double value) {
        this.value = value;
      }
     
     
      public double getValue() { return value; } 
     
     
      @Override
      public String toString() {
        return getValue() + "/20"; 
      }/**
       * Returns a string representation of the grade in the format X.X/20.
       * @return a string representation of the grade
       */
    Le problème c'est que je ne sais pas comment faire pour que ma méthode retourne une valeur de type "grade" comme est demandé au lieu d'un double . Merci beaucoup d'avance. J ai ajouté en pièce jointe le code que j'ai fait mais qui est incorrect...
    Images attachées Images attachées  

  2. #2
    Membre expérimenté Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 592
    Points : 1 679
    Points
    1 679
    Par défaut
    Citation Envoyé par sara.cd Voir le message
    le problème c'est que je sais pas comment faire pour que ma méthode retourne une valeur de type "grade" comme est demandé au lieu d'un double . Merci beaucoup d'avance. J ai ajouté en piece jointe le code que j'ai fait mais qui est incorrect...
    Bonjour,

    Au lieu d'un double, il faut renvoyer un Grade. Soit. Dans la classe Grade, le constructeur est défini ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public Grade(double value) {
      this.value = value;
    }
    Il suffit donc d'instancier (créer un objet) Grade comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      return new Grade( average );
    De même, pour la ligne appelant grades.get(i) (qui est un Grade) il manque un appel pour aboutir à un double.

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2020
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2020
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    merci beaucoup de votre réponse, j'ai bien compris le premier erreur. Cependant, je ne comprends pas ce que vous voulez dire par "il manque un appel pour aboutir à un double", il faut que je instancie ma variable sum? merci

  4. #4
    Membre expérimenté Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 592
    Points : 1 679
    Points
    1 679
    Par défaut
    Citation Envoyé par sara.cd Voir le message
    merci beaucoup de votre réponse, j'ai bien compris le premier erreur. Cependant, je ne comprends pas ce que vous voulez dire par "il manque un appel pour aboutir à un double", il faut que je instancie ma variable sum? merci
    sum est un double, c-à-d un type "primitif", pas un objet.

    Dans la ligne suivante
    grades est une collection de Grade, grades.get(i) est donc un Grade. L'éditeur râle car il s'ait d'appliquer une opération sur un sum et un Grade et il voit que ça n'est pas possible.

    Une possibilité est d'écrire "sum += grades.get(i).getValue()" puisque getValue() retourne la valeur attendue (un double) pour le Grade qui nous intéresse. Attention cependant aux valeurs nulles. Il y a d'autres façons de faire, mais plus avancées, à voir après plus d'expérience.

    L'essentiel à retenir est que les données et les opérations doivent être compatibles. Si l'opération porte sur des doubles, il faut lui donner des doubles, pas des Grades.

Discussions similaires

  1. Créer une méthode qui calcule le nombre des éléments d'un tableau
    Par turborider885 dans le forum Débuter avec Java
    Réponses: 1
    Dernier message: 08/10/2017, 18h31
  2. Réponses: 2
    Dernier message: 28/03/2013, 10h03
  3. programme qui calcule le nombre de caractères d'une chaîne
    Par sk8trasher dans le forum Débuter
    Réponses: 15
    Dernier message: 21/06/2012, 09h12
  4. [8.5]Problème pour calculer le nombre des personnes d'une liste
    Par Gotch59 dans le forum SAP Crystal Reports
    Réponses: 9
    Dernier message: 21/06/2007, 09h47
  5. Méthode qui permet de modifier le code d'une page après affichage .. ?
    Par winnie82 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 04/07/2006, 15h40

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