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 :

Petit soucis de programmation


Sujet :

avec Java

  1. #21
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    Je chauffe non?

    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
    public class devoir{
    	public static void main (String [] args){
            int n;
    	int max = 0;
            int numCandidatGagnant = 0;
    	int totaldesvotes = 0;
    	Terminal.ecrireString("Entrez le nombre de candidats : ");
    	n = Terminal.lireInt ();
     
    	for (int i=1;i<=n;i++){
    		Terminal.ecrireString("Entrez le nombre de voix du candidat " +i+ " : ");
    		int x = Terminal.lireInt();
                    if(x>max){
                          max = x ;
                          numCandidatGagnant = i;
                            }
    		totaldesvotes = x++;
    		Terminal.ecrireString("Le vainqueur est :"+numCandidatGagnant+ "avec" +(numCandidatGagnant/totaldesvotes)*100);
    		}
     
    	}
    }

  2. #22
    Membre éprouvé
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Points : 1 042
    Points
    1 042
    Par défaut
    est-ce qu tu compiles et exécute ton programme pour tester ce que tu fais?

    tu ne fais pas ton calcul dans tous les cas. De plus tu écrases la valeur de totaldesvotes par x+1!
    ta nouvelle valeur de totaldesvotes vaut totaldesvotes + ta valeur saisie!

  3. #23
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    Si je mets que totaldesvotes==x uniquement ma variable cumulera les sommes de x?

  4. #24
    Membre éprouvé
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Points : 1 042
    Points
    1 042
    Par défaut
    Citation Envoyé par gromain Voir le message
    Si je mets que totaldesvotes==x uniquement ma variable cumulera les sommes de x?
    == est un opérateur d'égalité!
    je pense que tu devrais aller jeter un coup d'oeil du côté des cours Java!
    http://java.developpez.com/cours/

  5. #25
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    Bonjour messieurs,

    Je reviens vers vous une dernière fois. J'ai avancé dans mon prog mais j'ai 2 petits soucis.

    Le premier est qu'en fait ma variable numCandidatGagnant prend uniquement le numéro du dernier candidat et pas celui qui a le vote max.

    Et le 2eme, le programme ne prend pas en compte mon calcul. Il mets systématiquement 0. En testant mes variables elles ont bien les valeurs qu'il faut.

    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
     
    public class devoir{
    	public static void main (String [] args){
            int n;
    	Terminal.ecrireString("Entrez le nombre de candidats : ");
    	n = Terminal.lireInt ();
     
    	int vote = 0;
    	int max = 0;
            int numCandidatGagnant = 0;
    	int totaldesvotes = 0;
    	int pourcentage = 0;
     
    	for (int i=1;i<=n;i++){
    		Terminal.ecrireString("Entrez le nombre de voix du candidat " +i+ " : ");
    		vote = Terminal.lireInt();
                    if(vote>max) max = vote;
                    numCandidatGagnant = i;
    		totaldesvotes+=vote;
    		}
    		pourcentage = max/totaldesvotes*100;
    		Terminal.ecrireString("Le vainqueur est : " +numCandidatGagnant + " avec " +pourcentage);
    	}
    }
    Je vous remercie pour votre aide.

  6. #26
    Membre éprouvé
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Points : 1 042
    Points
    1 042
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    pourcentage = max/totaldesvotes*100;
    		Terminal.ecrireString("Le vainqueur est : " +numCandidatGagnant + " avec " +pourcentage);
    Sors déjà ça de ta boucle for!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    totaldesvotes+=vote;
    ça tu dois le faire dans tous les cas pas que quand vote>max!

  7. #27
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    J'ai fini par trouver en cherchant. Merci quand meme pour le conseil.
    Par contre je ne comprends pas pourquoi il me mets 0 quand je fais mon calcul. J'ai testé toutes mes variables et elles contiennent les bons chiffres.

    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
    public class devoir{
    	public static void main (String [] args){
            int n;
    	Terminal.ecrireString("Entrez le nombre de candidats : ");
    	n = Terminal.lireInt ();
    	
    	int vote = 0;
    	int max = 0;
            int numCandidatGagnant = 0;
    	int totaldesvotes = 0;
    	double pourcentage = 0;
    		
    	for (int i=1;i<=n;i++){
    		Terminal.ecrireString("Entrez le nombre de voix du candidat " +i+ " : ");
    		vote = Terminal.lireInt();
                    if(vote>max){
    		max = vote;
    		numCandidatGagnant = i;
                   		}
    		totaldesvotes += vote;
    		
    	}
    		
    		pourcentage = max / totaldesvotes * 100;
    		Terminal.ecrireString("Le vainqueur est : " +numCandidatGagnant + " avec " +pourcentage);
         }
    }

  8. #28
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    Bon je crois que j'ai trouvé!! Enfin!! Merci pour ta patience!!

  9. #29
    Membre éprouvé
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Points : 1 042
    Points
    1 042
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    double ratio = (double) max/totaldesvotes;
    double pourcentage = ratio*100;
    essaie ça car la max/totaldesvotes étant la division entière, il te renverra toujours 0!

  10. #30
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 16
    Points : 2
    Points
    2
    Par défaut
    J'ai un peu contourné le soucis et ca fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    pourcentage = max * 100 / totaldesvotes;

  11. #31
    Membre éprouvé
    Avatar de michel.di
    Homme Profil pro
    Freelance
    Inscrit en
    Juin 2009
    Messages
    782
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 782
    Points : 1 042
    Points
    1 042
    Par défaut
    effectivement ça fonctionne. c'était pour que tu comprennes ce qui n'allait pas!

    tu peux donc marquer le sujet comme résolu!

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. petit souci de programmation sur c !
    Par devilwalid dans le forum Débuter
    Réponses: 0
    Dernier message: 08/11/2010, 20h00
  2. petit soucis de programmation
    Par lila1 dans le forum C++
    Réponses: 12
    Dernier message: 16/10/2008, 18h36
  3. Petit souci de recherche dans mon programme
    Par jojo72000 dans le forum Débuter
    Réponses: 4
    Dernier message: 03/06/2008, 18h54
  4. petit programme en java = gros souci de programmation
    Par axelandre dans le forum Langage
    Réponses: 1
    Dernier message: 14/11/2007, 08h11
  5. [Débutant] Petit souci programme de conversion binaire
    Par scofild20 dans le forum Assembleur
    Réponses: 2
    Dernier message: 26/03/2007, 12h01

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