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

NetBeans Java Discussion :

Problème de calcul


Sujet :

NetBeans Java

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

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Problème de calcul
    Bonjour, étant débutant sur NetBeans, je voudrais réaliser une calculatrice, alors voila le problème est que mes calcules ne se font pas correctement, et je n'arrive pas a trouver le problème
    (jbutton11 correspond au boutton "+" et jButton12 correspond au boutton "="
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
        private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            // TODO add your handling code here:
             double R = 8 ;
            jTextField1.setText(jTextField1.getText()+R);
        }                                        
     
        private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {                                         
            // TODO add your handling code here:
             double R = 9 ;
            jTextField1.setText(jTextField1.getText()+R);
        }                                        
     
        private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {                                          
            // TODO add your handling code here:
             double R = 0 ;
            jTextField1.setText(jTextField1.getText()+R);
        }                                         
     
        private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {                                          
            // TODO add your handling code here:
            jTextField1.setText(jButton11.getText());            
        }                                         
     
        private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {                                          
            // TODO add your handling code here:
            double n1 = Double.parseDouble(jTextField1.getText());
            double n2 = Double.parseDouble(jTextField1.getText());
            double T = (n1+n2);
    jTextField1.setText(""+T);

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 73
    Points : 179
    Points
    179
    Par défaut
    Tel que c'est codé, n1 est toujours égal à n2, donc tu te contentes de faire une multiplication par 2.

    Ton bouton '+' doit stocker la valeur du jTextField1 dans une variable avant de l'écraser pour pouvoir l'utiliser plus tard.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Merci de ta réponse, mais etant débutant je pourrai avoir un bout du code pour que sa soit plus cler a mes yeux svp ?

  4. #4
    Membre éprouvé Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Points : 934
    Points
    934
    Par défaut
    Salut !
    On pourrait définir une variable (un double) pour y stocker la valeur actuelle du résultat, l'appeler "Total" ou "Solde" ou... , et utiliser le textfield uniquement pour l'affichage de ce solde.
    Ca nous éviterait des contorsions du genre Double.parseDouble(jTextField1.getText()); ".

    En résumé : les calculs dans un composant prévu pour le calcul, et l'affichage dans un composant prévu pour afficher.

  5. #5
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 807
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 807
    Points : 7 613
    Points
    7 613
    Par défaut
    Salut

    Citation Envoyé par loic.fontaine Voir le message
    Bonjour, je continue mon parcourt sur la calculatrice, mais le problème étant le calcule.
    Et pourquoi le continuer ici et non pas plutôt à la suite de ton précédent sujet... qui est le même???

    Citation Envoyé par loic.fontaine Voir le message
    En effet je dois stocker le la valeur du "+" (jButton11) dans une variable pour que le resultat soit correct mai je n'y parvient pas
    C'est assez étrange...
    Tout d'abord, ça veut dire quoi:

    Citation Envoyé par loic.fontaine Voir le message
    stocker le la valeur du "+" (jButton11) dans une variable pour que le resultat soit correct
    ?

    1. Tu veux mettre "+" dans une variable?
    2. Tu veux mettre "jButton11" dans une variable?
    3. Faut-il chercher quelle valeur donner au "+" pour avoir le bon résultat?
    4. Autre?


    Sachant que tu fais déjà des choses comme:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    double n1 = Double.parseDouble(jTextField1.getText());
    double n2 = Double.parseDouble(jTextField1.getText());
    On voit très bien que tu sais mettre la valeur d'un textField dans une variable. Donc où est le problème?


    Cela dit, tu trouves des codes pour faire une calculatrice en Java sur le net à foison. Il ne te reste plus qu'à comprendre son fonctionnement pour faire la tienne (sans repomper intégralement bien entendu si ton prof surveille le net...)
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    En gros, il faut que dans le jButton11 (le boutton "+") je fait le calcule et le jbutton12 (le boutton "=") affiche juste le resultat.
    Le problème est que je ne sais pas comment afficher le résultat du boutton11 en cliquant sur le boutton12.
    Comment je peux afficher sa ?
    ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {                                          
            // TODO add your handling code here:  
            double n1 = Double.parseDouble(jTextField1.getText());
            double n2 = Double.parseDouble(jTextField1.getText());
            double T = n2+n1;
            System.out.println(T);
            jTextField1.setText(jButton11.getText());
        }                                         
     
        private void jButton12ActionPerformed(java.awt.event.ActionEvent evt) {                                          
    jTextField1.setText(jButton11.);

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

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    en faite suite a cela, le resultat donné est multiplié par deux et j'aimerai que le resultat soit juste mais je ne sais pas comment faire :/
    Quelqu'un pourrai m'aider en me donner un code svp ?

  8. #8
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 807
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 807
    Points : 7 613
    Points
    7 613
    Par défaut
    De toute façon, comme j'ai dit:

    Citation Envoyé par plegat Voir le message
    Cela dit, tu trouves des codes pour faire une calculatrice en Java sur le net à foison.
    Sinon, en gros, il te faut partir sur un algo qui utilise deux variables: une qui va stocker le résultat courant, une autre qui va stocker la dernière opération.
    Puis dès que tu cliques sur une opération ou sur "=", tu fais l'opération stockée dans la seconde variable entre la première variable et ce que tu as dans ton texfield, sauf si l'opération stockée était "=" auquel cas il n'y a rien à faire comme opération.
    Ensuite tu mets à jour les deux variables (résultat courant, et opération).


    Sinon, double sujet, pourrait-on fusionner?
    http://www.developpez.net/forums/d13...obleme-calcul/
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Je comprend ce que tu veux me dire, en gros je dois stocker la première valeur en cliquant sur plus dans une variable , puis en entran la deuxième valeur et en cliquant sur "=" cela stockera la deuxième valeur ! suite a cela dans le boutton egale faire appel a la variable de la premiere valeur du boutton "+" !

    Mais je n'arrive pas a faire appel aux composant du jButton11 dans le jButton12.

  10. #10
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 807
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 807
    Points : 7 613
    Points
    7 613
    Par défaut
    Citation Envoyé par loic.fontaine Voir le message
    Mais je n'arrive pas a faire appel aux composant du jButton11 dans le jButton12.
    Déjà, on n'appelle pas ça des "composants" mais des... variables, propriétés... ça dépend du contexte.
    n1 et n2 ne sont pas des "composants" de jButton11, ce sont juste deux variables internes à la méthode jButton11ActionPerformed.

    Ensuite, déclare-les en tant que propriétés de la classe et non pas en tant que variable interne à la méthode.

    Peut-être ne saurais-je que trop te conseiller de revoir quelques bases de la programmation Java si vraiment tu as du mal à ce niveau. Revois comment s'organise une classe, avec ses méthodes et ses propriétés...
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    comment je peux déclarer en propriété de classe svp ?

  12. #12
    Membre régulier
    Homme Profil pro
    Inscrit en
    Janvier 2012
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2012
    Messages : 133
    Points : 109
    Points
    109
    Par défaut
    Il suffit de mettre le préfixe static devant ta variable.

    Ainsi toute ta classe connaîtra cette variable

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    le problème c'est quand cliquand sur le jbutton et faisant une actionperformed je peux pas modifier la ligne : private void jbutton11 ! :/
    et apres dans le jbutton12 comment je pourrais faire appel aux variable du jButton11 ?

  14. #14
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 807
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 807
    Points : 7 613
    Points
    7 613
    Par défaut
    Citation Envoyé par loic.fontaine Voir le message
    le problème c'est quand cliquand sur le jbutton et faisant une actionperformed je peux pas modifier la ligne : private void jbutton11 ! :/
    C'est quoi cette ligne?
    Pourquoi tu veux la modifier?
    Ca serait bien d'être un minimum précis dans tes questions...


    Citation Envoyé par loic.fontaine Voir le message
    et apres dans le jbutton12 comment je pourrais faire appel aux variable du jButton11 ?
    Qu'est-ce que tu appelles "variable du jButton11"?
    On t'a déjà dit de déclarer les variables que tu veux utiliser dans plusieurs méthodes en dehors de ces méthodes. Ensuite tu y fais appel directement... (ou en préfixant par "this" au besoin).

    Revois tes cours de débutant en java...
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

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

Discussions similaires

  1. Problème de calcule en SQL !
    Par FilipeVV dans le forum Langage SQL
    Réponses: 3
    Dernier message: 02/09/2005, 12h45
  2. Problème de calcul matricielle
    Par Clad3 dans le forum Algorithmes et structures de données
    Réponses: 21
    Dernier message: 29/06/2005, 22h45
  3. problème de calcul des normales par sommet
    Par captainSeb dans le forum OpenGL
    Réponses: 2
    Dernier message: 21/01/2005, 14h42
  4. [Calendar]Problème de calcul de date
    Par valerie90 dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 08/12/2004, 13h13
  5. Problème de calcul unix_timestamp
    Par petit_stagiaire dans le forum Administration
    Réponses: 2
    Dernier message: 28/04/2004, 16h27

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