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 :

Problème de score


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème de score
    Bonjour,
    j'ai commencer a apprendre il y a 2 heures et j'ai voulu créer un pierre feuilles ciseaux simple seulement voila :
    j'ai créer un boucle while (a<7 || b<3)
    qui sert a continuer le jeu tant qu'aucun des joueurs n'as atteint le score de 7 sauf que cela marche seulement pour b et je ne comprend pas pourquoi.
    j'ai mis une commande affichant les scores a la fin et cela me dit que j'ai 18 et l'"A.I" 7.
    En espérant ne pas poser une question trop idiote. Merci.

    voila le 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
    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
    import java.util.*;
     
    public class PierreFeuillesCiseaux {
     
     
    	public static void main(String[] args) {
    		// montre les choix
    		System.out.println("pierre : 1");
    		System.out.println("feuille : 2");
    		System.out.println("ciseaux : 3");
     
    		int player;
    		int a=0;//variables de comptage des points
    		int b=0;
     
    		Scanner lecture = new Scanner(System.in); 
    		while (a < 7 || b<7)//devrait permettre a la partie de continuer jusqu'a ce qu'un des joueurs ai atteint le score de 7 
    		{
     
    		System.out.println("choisissez votre coup :");
    		player = lecture.nextInt();
    		//choix du joueur
    		if (0<player && player<4) //si la valeur est comprise entre 1 et 3 alors le jeu commence 
    		{	
    			Random r = new Random();
    			int ai = 1 + r.nextInt(4-1);//choix de la valeur de l'A.I
     
    			if (player == 1 && ai == 2)	//definition des regles 
    			{System.out.println("Tu Perds !");
    			b++;//ajout des points
    			}
    			if (player == 2 && ai == 3)
    			{System.out.println("Tu Perds !");
    			b++;
    			}
    			if (player == 3 && ai == 1)
    			{System.out.println("Tu Perds !");
    			b++;
    			}
    			if (player == 1 && ai == 3)
    			{System.out.println("Tu Gagnes !");
    			a++;
    			}
    			if (player == 2 && ai == 1)
    			{System.out.println("Tu Gagnes !");
    			a++;
    			}
    			if (player == 3 && ai == 2)
    			{System.out.println("Tu Gagnes !");
    			a++;
    			}
    			if (player==ai)
    			{System.out.println("Match Nul !");
    			}
     
     
     
     
     
    		}
    		else //si la valeur n'est pas comprise entre 1 et 3 alors elle n'est pas comptée
    		{
     
    			System.out.println("le chiffre doit etre compris entre 1 et 3");
     
    		}
     
     
     
     
     
    		}
    		if (a>b)						//partie qui gere la fin de partie
    		{System.out.println("Tu gagnes la partie !");
    		}
    		else
    		{System.out.println("Tu perds la partie !");
    		System.out.println("score :");
    		System.out.print("vous : ");
    		System.out.println(a);
    		System.out.print("L'A.I : ");
    		System.out.println(b);
     
    	}
     
    }
    }

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    j'ai créer un boucle while (a<7 || b<7)
    "Tant qu'un des joueur n'a pas atteint le score de 7," donc -_-°.
    Ce qui signifie "tant qu'on a pas les deux joueurs qui ont un score de 7 ou plus."

    Citation Envoyé par yuukiflow Voir le message
    En espérant ne pas poser une question trop idiote. Merci.
    ... Disons que c'est toujours moins idiot que ne pas la poser du tout -_-°.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Ta condition de boucle :

    signifie "tant que la condition est vraie", et la condition est "soit a<7 est vraie, soit b<7 vraie, soit les deux sont vraies".

    Donc tant que l'une des 2 variables a ou b (enfin sa valeur), est inférieure à 7, on boucle.

    Je suppose que tu voudrais que ta boucle s'arrête lorsqu'un des deux joueurs a atteint le score de 7. Soit dès que l'une des deux variables n'est plus inférieure à 7.

    Donc c'est un et qu'il faut utiliser :
    Tant que les 2 joueurs ont tous les deux un score inférieur à 7, on continue de jouer.

    N'oublies pas que :

    • faux ou faux = faux
    • faux ou vrai = vrai
    • vrai ou faux = vrai
    • vrai ou vrai = vrai


    • faux et faux = faux
    • faux et vrai = faux
    • vrai et faux = faux
    • vrai et vrai = vrai
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Merci :D
    vous répondez vite O.o
    donc le problème vient juste du || moi je pensais a l'inverse en fait : je pensais quand mettant while (a<7 && b<7) il faudrait que les deux soit vrai pour que ça s’arrête merci maintenant j'vais pouvoir travailler a le simplifier et mettre une interface graphique
    merci encore

    edit : ca marche niquel

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

Discussions similaires

  1. Problème calcul des scores ?
    Par chiv dans le forum Intelligence artificielle
    Réponses: 0
    Dernier message: 27/02/2013, 17h11
  2. [Débutant] jeu (problème d'affichage de score)
    Par danièle100 dans le forum C++Builder
    Réponses: 1
    Dernier message: 08/06/2010, 21h08
  3. probléme d'enregistrement de score
    Par sebairo dans le forum Flash
    Réponses: 1
    Dernier message: 24/04/2008, 10h51
  4. Problème d'installation oracle 8.1.7 sous NT
    Par Anonymous dans le forum Installation
    Réponses: 7
    Dernier message: 02/08/2002, 14h18
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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