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 :

Créer une application Java [Débutant(e)]


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Créer une application Java
    Bonjour,

    J'ai un projet en informatique qui consiste à créer une application java gérant des mensualités pour un emprunt automobile sous plusieurs conditions. Je voulais savoir si quelqu'un pouvais me donner des pistes concernant la rédaction du code de type calcule()...Je suis débutant en java et très peu familier avec la programmation.

    Merci d'avance.

  2. #2
    Membre émérite
    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
    Points : 2 657
    Points
    2 657
    Par défaut
    Il te faut une application graphique ou pas?

    Dans tous les cas il semble que si tu veux le faire toi même tu doivent suivre des tutos pour débutant en Java en premier lieu.

  3. #3
    Membre averti Avatar de Doopeijii
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 215
    Points : 323
    Points
    323
    Par défaut
    Si t'es débutant en programmation, j'approuve ce que dis deathness : il faut que tu fasses des tutos. Et pour ce genre d'application je suis près à parier qu'après un bon tuto sur les bases du JAVA t'auras plus de soucis
    Un petit n'est pas de trop si le message est utile

    "Vous êtes très nombreux dans votre cas? J'ai jamais pensé que les cons étaient en minorité..."

  4. #4
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Oui, il me faut une interface graphique que j'ai créé sans difficultés, j'ai également facilement réussi à implémenter l’événement fermeture de fenêtre mais au moment de compléter ma classe Delegue pour effectuer mon calcul je n'arrive plus (après avoir longuement essayé, je vous l'assure) à gérer toutes mes conditions et à afficher le résultat des mensualités. Je suis des cours d'informatique bien qu'étant étudiant en finance...Mais à aucun moment on a vu cela en cours et les tutos ne m'ont pas été d'une grande aide.
    Merci de vos réponses.

  5. #5
    Membre averti Avatar de Doopeijii
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 215
    Points : 323
    Points
    323
    Par défaut
    Citation Envoyé par rddrouge Voir le message
    les tutos ne m'ont pas été d'une grande aide.
    Merci de vos réponses.
    Bah au fait ce qu'il te reste à faire si j'ai bien compris, c'est des formules pour faire tes vérifications nan? Dans ce cas c'est plus vraiment des tutos, c'est la FAQ et de la logique mathématique
    Un petit n'est pas de trop si le message est utile

    "Vous êtes très nombreux dans votre cas? J'ai jamais pensé que les cons étaient en minorité..."

  6. #6
    Membre émérite
    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
    Points : 2 657
    Points
    2 657
    Par défaut
    J'ai un peu de mal à voir ton problème.
    Tu bloques au niveau de la logique métier (les calculs à faire) ou alors sur un problème de programmation quelconque (gérer les événements graphiques par ex) ?

  7. #7
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    La partie graphique n'est pas un problème, le problème c'est la partie void calcule() dans la classe Delegue. J'ai ma formule de mensualités mais quand je clique sur "valider" le résultat affiché est: NaN et je ne vois pas mon erreur. Parallèlement à cela, mes conditions sont mal formulées.

  8. #8
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Citation Envoyé par rddrouge Voir le message
    le résultat affiché est: NaN et je ne vois pas mon erreur. Parallèlement à cela, mes conditions sont mal formulées.
    NaN signifie "Not a Number". Tu dois avoir quelque chose dans tes opérations d'indéfinis se produisant dans ton code (division par 0 par exemple).

    Dans tout les cas, il nous faut un bout de ton code pour déboguer un peu moins à l'aveugle.
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  9. #9
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Le voilà :

    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
    91
    92
    93
    94
    void calcule() {
    		float montant;
    		int nbmois;
    		float revenu;
    		int nbcf;
    		double tx = 0;
    		double mensualite = 0;
     
    		montant = new Float(fen.txt1.getText()).floatValue();
    		nbmois = new Integer(fen.c2.getSelectedItem()).intValue();
    		revenu = new Float(fen.txt2.getText()).floatValue();
    		nbcf = new Integer(fen.c1.getSelectedItem()).intValue();
    		for(int i = 0; i < nbmois; i++){
                		mensualite = ((montant*(tx/12)) / (1-Math.pow(1+tx/12, -nbmois)));
    			}
    		String res = new Double(mensualite).toString();
    		res = res+ "Résultat de la demande d'emprunt :";
     
     
    		boolean condition1 = (montant < 10*revenu);
    		boolean condition2 = (nbmois <= 36);
    		boolean condition3 = (nbmois <= 48);
    		boolean condition4 = (nbmois <= 60);
    		boolean condition5 = (nbmois <= 72);
    		boolean condition6 = (nbcf > 6)&&(nbcf <= 12);
    		boolean condition7 = (revenu > 60000);
    		boolean condition8 = (nbcf > 12);
    		boolean condition9 = (revenu > 120000);
    		boolean condition10 = (nbcf < 8);
    		boolean condition11 = (nbcf > 8);
     
     
    		String type = fen.c3.getSelectedItem();
     
    		if ((type=="Essence")||(type=="Diesel")||(type=="Hybride")||(type=="Electrique")){
    			if(condition10){
    				tx = 0.04;
    				res = res+ "\nLe taux appliqué est de 0.04 annuel";
    				}
    			if(!condition10){
    				tx = 0.05;
    				res= res+ "\nLe taux appliqué est de 0,05 annuel";
    				}
    			if((condition6)&&(!condition7)){
    				res = res+ "\nSi le nombre de chevaux fiscaux est supérieur a 6, le revenu annuel doit être supérieur à 60000";
    				res = res+ "\nPRET REFUSE";
    				}
    			if((condition8)&&(!condition9)){
    				res = res+ "\nSi le nombre de chevaux fiscaux est supérieur a 12, le revenu annuel doit être supérieur à 120000";
    				res = res+ "\nPRET REFUSE";
    				}
    			if (!condition1){
    				res = res+ "\nLe montant ne peut excéder 10 fois le revenu annuel, soit " +revenu*10;
    				res = res+ "\nPRET REFUSE";
    				}
    			}
    		if(type=="Essence"){
    			if(condition2){
    				res = res+ "\nLe montant de la mensualité est :" + new Double(mensualite).toString();
    				}
    			if(!condition2){
    				res = res+ "\nPour une voiture Essence, la durée ne peut excéder 36 mois";
    				res = res+ "\nPRET REFUSE";
    				}
    			}
    		if(type=="Diesel"){
    			if(condition3){
    				res = res+ "\nLe montant de la mensualité est :" + new Double(mensualite).toString();
    				}
    			if(!condition3){
    				res = res+ "\nPour une voiture Diesel, la durée ne peut excéder 48 mois";
    				res = res+ "\nPRET REFUSE";
    				}
    			}
    		if(type=="Hybride"){
    			if(condition4){
    				res = res+ "\nLe montant de la mensualité est :" + new Double(mensualite).toString();
    				}
    			if(!condition4){
    				res = res+ "\nPour une voiture Hybride, la durée ne peut excéder 60 mois";
    				res = res+ "\nPRET REFUSE";
    				}
    			}
    		if(type=="Electrique"){
    			if(condition5){
    				res = res+ "\nLe montant de la mensualité est :" + new Double(mensualite).toString();
    				}
    			if(!condition5){
    				res = res+ "\nPour une voiture Electrique, la durée ne peut excéder 72 mois";
    				}
    			}
    fen.texte.setText(res);
    		}
    	}

  10. #10
    Membre averti Avatar de Doopeijii
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 215
    Points : 323
    Points
    323
    Par défaut
    S'il te plaît il existe des balises codes pour justement... ton code et ton erreur désigne quelle ligne??
    Un petit n'est pas de trop si le message est utile

    "Vous êtes très nombreux dans votre cas? J'ai jamais pensé que les cons étaient en minorité..."

  11. #11
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Je pense que c'est la partie avec le calcul qui pose problème d’où l'affichage NaN.

  12. #12
    Membre averti Avatar de Doopeijii
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 215
    Points : 323
    Points
    323
    Par défaut
    Citation Envoyé par rddrouge Voir le message
    Je pense que c'est la partie avec le calcul qui pose problème d’où l'affichage NaN.
    Normalement tu devrais en être sûr puisque ton erreur doit désigner une ligne, celle à laquelle elle se produit alors si tu veux bien la communiquer... Ou a défaut toute la ligne d'erreur !
    Un petit n'est pas de trop si le message est utile

    "Vous êtes très nombreux dans votre cas? J'ai jamais pensé que les cons étaient en minorité..."

  13. #13
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Il n'y a pas de ligne en particulier puisque le fichier est compilé sans problème. L'affichage est mauvais cependant (NaN) ce qui laisse penser une erreur dans le calcul.

  14. #14
    Modérateur
    Avatar de XxArchangexX
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Mars 2012
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2012
    Messages : 1 159
    Points : 2 323
    Points
    2 323
    Par défaut
    Bonjour,
    Pour ma part je verrais bien :

    mensualite = ((montant*(tx/12)) / (1-Math.pow(1+tx/12, -nbmois)));

    avec un tx = 0 tu as

    1 + 0/12 = 1
    1 à la puissance n'importe = 1
    1-1 = 0
    ((montant*(tx/12)) /0 => erreur

    tu as même 0/0, je ne comprend pas tu initialises ton tx à 0 mais tu ne le change pas du moins je n'ai pas l'impression.

    Remarque : montant = new Float(fen.txt1.getText()).FloatValue())
    je ne sais pas si tu connais mais je trouve plus lisible => Float.parseFloat(fen.txt1.getText()))
    L'Etat est bien administré quand l'escalier de l'école est usé et que l'herbe croît sur celui du tribunal.

    Modérateur BI

Discussions similaires

  1. Créer un .exe d'une application java
    Par ja1985va dans le forum Langage
    Réponses: 5
    Dernier message: 31/08/2010, 12h16
  2. Réponses: 0
    Dernier message: 31/03/2008, 13h06
  3. Créer un paquet depuis une application Java
    Par mac88 dans le forum KDE
    Réponses: 2
    Dernier message: 23/02/2008, 19h36
  4. Créer un Help d'une application Java
    Par selmaK dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 05/04/2007, 12h28
  5. Créer un help dans une application java
    Par baya1 dans le forum API standards et tierces
    Réponses: 6
    Dernier message: 01/04/2007, 23h54

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