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

Java Discussion :

Comment calculer une subtistution


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 53
    Par défaut Comment calculer une subtistution
    Bonjour a tous

    Je cree une class student, ayant 2 resultat pour leurs examens. Le premier est TMA marks et le second exam marks. J'ai cree une method appele average.

    Voici le code pour cette method:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    /**
        * Calculates average of a list of integers
        */
       public double average(List<Integer> list)
       {
          double sum = 0.0;
          for (int i = 0; i < list.size(); i = i+1)
          {
          sum = sum + list.get(i);
          }
          return sum /4;
       }
    Cette methode fonctionne super, quand je tappe dans le displaypane:

    Integer[] numberArray = {75, 59, 0, 70};
    Student.average(Arrays.asList(numberArray));

    Le resultat me 51 ce qui est correct.

    Mon problem est pour creer la method suivante. Je dois calculer l'average des TMA plus exam marks divider par 2. Par example 51 + 64 / 2, ce qui me donne le resultat de substitution de 57%. Voici mon code:

    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
     
    /**
        * Calculates and sets the substitutionScore of the receiver
        */
       public void calcSubstitutionScore()   
       {
          for (int aScore : scores)
          {
             this.results.put(aScore, new HashSet<String>());
          }
            for (String average : students.keySet())
            {
            for(String graded : this.results.get(average))
            {
            this.results.get(graded).add(average)/2;
            }
            }
       }
    Pour tester ma method je dois creer une instance de Student et lui envoyer les messages setTmaMarks(), setExamMark().

    Bien evidement ma methode ne fonctionne pas, si besoin je peux donner le code complet pour la class Student.

  2. #2
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Pourquoi ça ne fonctionne pas ? Quel est le message d'erreur ?

  3. #3
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 53
    Par défaut Re: substitution
    Il me donne pleins de syntax errors. Par example pour la ligne:

    this.results.get(graded).add(average)/2;

    Il me met: not a statement.

    Pour la ligne:

    for (int aScore : scores)

    Il me met : cannot find symbol - variable score


  4. #4
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    Bin il faut corriger les syntax errors... y en a-t-il pour lesquels tu n'y arrives pas ?

  5. #5
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 53
    Par défaut Re:
    Pour la ligne: for (int aScore : scores), j'ai dans la class Student une instance appeler: private int substitutionScore; Ayant 2 methods:

    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
     
    /**
        * Sets the substitutionScore of the receiver to aScore
        */
       private void setSubstitutionScore (int aScore)
       {
          this.substitutionScore = aScore;
       }
     
     /**
        * Returns the substitutionScore of the receiver
        */
       public int getSubstitutionScore()
       {
          return this.substitutionScore;
       }
    De la j'ai cree la ligne: for (int aScore : scores).

    Je ne vois pas comment remplacer mon code, dans ma tete je vois ExamMark + Average /2, ce serrais tellement simple



    Je pensais a changer aScore par: for (int tmaMarks : average), ce qui me donne no syntax error sur cette ligne.

    Par contre il ne reconnais pas results sur la ligne:

    this.results.put(tmaMarks, new HashSet<String>());

  6. #6
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    En Java l'usage des termes obéit à différentes règles de visibilité. Il ne suffit pas que tu le voyes dans ta tête pour que la mécanique java le voye.

    Comme exemple très simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    { // un bloc
     { // un autre bloc
       int quantité; // je déclare ma variable ici
     
      quantité = 45; // bon : la variable quantité est déclarée dans le même bloc
      Quantité = 45 // syntax error ici : quantité n'est pas Quantité en java
     }
     quantité = 45 // syntax error ici : quantité n'est pas déclarée dans ce bloc.
    }
    Consulte les Les meilleurs cours Java : Pour débuter.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment calculer une tva
    Par pierrot67 dans le forum Rave
    Réponses: 1
    Dernier message: 13/12/2006, 15h28
  2. Comment calculer une racine carrée ?
    Par Poseidon62 dans le forum Ada
    Réponses: 9
    Dernier message: 28/11/2006, 00h29
  3. Comment calculer une limite ?
    Par Pushka07 dans le forum SQL Procédural
    Réponses: 14
    Dernier message: 06/09/2006, 21h06
  4. [C#] Comment calculer une opération à la volée ?
    Par david71 dans le forum Windows Mobile
    Réponses: 4
    Dernier message: 25/04/2006, 12h34
  5. Comment calculer une dérivée
    Par guintolli dans le forum Mathématiques
    Réponses: 6
    Dernier message: 06/02/2006, 20h05

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