Allumettes [Résolu]

Messages postés
21
Date d'inscription
jeudi 30 mai 2013
Dernière intervention
25 février 2017
- - Dernière réponse : stroke599
Messages postés
21
Date d'inscription
jeudi 30 mai 2013
Dernière intervention
25 février 2017
- 10 oct. 2013 à 17:11
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
#include <string.h>
  
int main()
{
// Demander l'identité de l'utilisateur
char  nom[50]; 
char reponse,niveau;
bool choixCorrect;
// Demander à un joueur le nombre d'allumettes prises
int choix;
char quitter;
printf("Quel est votre nom ?");
scanf(" %s",nom);
// Saisir la difficulté souhaitée
printf("Niveau de l'ordinateur (n)aïf, (d)istrait ou (e)xpert ?");
scanf(" %c ",&reponse);
if (reponse == 'n' || reponse == 'N' || reponse == 'd' || reponse == 'D' || reponse == 'e' || reponse == 'E')
niveau = reponse;
else
niveau = 'e';
printf("Commande inconnue, nous passons par default en mode expert.");
 
// Déterminer qui commence la partie
char depart = 'o';
bool tourHumain = 0;
printf("Est-ce que vous commencez (o/n) ?");
scanf("%c ",&depart);
if (depart =='o' || depart == 'O') 
tourHumain = 1; // L'utilisateur commence
else
tourHumain = 0; // L'ordinateur commence
// Jouer une partie
int reste = 13;
do {
//Afficher le nombre d'allumettes restantes
for (int ligne = 1; ligne <= 3; ligne++) {  
    for (int colonne = 1; colonne <= reste; colonne++) {
        printf("| ");
    if (colonne % 5 == 0) {
    printf(" ");
    }
}
    printf(" ");
}
 
// Demander à l'utilisateur le nombre d'allumettes prises
if (tourHumain ==1) {
choixCorrect = 0;
printf(nom ," %c combien prenez-vous d'allumettes ?");
scanf("%d ",&choix);
    if (choix > 3)
        printf("La prise est limitée à 3 allumettes maximum !");
    else if (choix > reste)
        printf("Il reste seulement %d " ,reste ,"allumettes dans le tas");
    else if (choix < 0)
    printf("saisie invalide"); 
    else if (choix == 0) {
    printf("Voulez-vous vraiment quitter la partie ? (o/n)");
        scanf("%c",&quitter);
    if (quitter == 'o' || quitter == 'O')
    reste = 0;
    else
    {
        printf(nom  ," %c combien prenez-vous d'allumettes ?");
        scanf("%d",&choix);
 
    }  
    }
    else {
    choixCorrect = 1;
    reste = reste - choix; // Retirer les allumettes prises par l'utilisateur
    tourHumain = 0;
    }
// Faire tirer des allumettes à l'ordinateur selon le niveau choisi
}
    else
        {
        printf("Ordinateur, combien prenez-vous d'allumettes ?");
        switch (niveau)
        {
        case 'n':
        case 'N':
        if (reste >= 3)
        choix=rand()+1;
        //choix = rand(3) + 1;
        else
        choix=rand() -1;
        //choix = rand(reste - 1) + 1;
        break;
        case 'd':
        case 'D':
        choix=rand()+3;
        //choix = rand(3) + 1;
        break;
    default:
    if (reste % 4 == 1)
        choix = 1;
    else
        choix = (reste - 1) % 4;
    }
    reste = reste - choix; // Retirer les allumettes prises par l'ordinateur
    }
    }
    while (reste !=0);
// Afficher le vainqueur
if (tourHumain == 1)
printf("Félicitation, vous avez remporté la partie ! %c",nom);
else
printf("Ordinateur a gagné ! ");
 
 
return EXIT_SUCCESS;
}


Le jeu des 13 allumettes compile bien mais ne fait pas ce que je lui demande de faire,c'est fâcheux :) lol

Quelqu'un pourrait me débloquer merci
Afficher la suite 

Votre réponse

5 réponses

Messages postés
14300
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
18 décembre 2018
0
Merci
Hello,
As-tu ciblé le souci?
mais ne fait pas ce que je lui demande de faire
C'est malheureusement vague comme descriptif... Un peu plus de détails serait le bienvenu
Commenter la réponse de BunoCS
Messages postés
21
Date d'inscription
jeudi 30 mai 2013
Dernière intervention
25 février 2017
0
Merci
https://www.dropbox.com/s/ve8j6yzvwh20bc1/algo-1tr-2013-tp-04-sujet.pdf


Voilà le sujet j'ai aussi fais les raffinages pour le projet mais je bloque alors que normalement ça devrait marché
--
Commenter la réponse de stroke599
Messages postés
14300
Date d'inscription
lundi 11 juillet 2005
Statut
Modérateur
Dernière intervention
18 décembre 2018
0
Merci
normalement ça devrait marché
C'est que l'on dit, tous!! =)

Qu'est-ce qui ne marche pas? L'as-tu testé en pas-à-pas?
Commenter la réponse de BunoCS
Messages postés
4269
Date d'inscription
samedi 8 septembre 2007
Dernière intervention
29 août 2018
0
Merci
https://www.dropbox.com/s/ve8j6yzvwh20bc1/algo-1tr-2013-tp-04-sujet.pdf 


Voilà le sujet j'ai aussi fais les raffinages pour le projet mais je bloque alors que normalement ça devrait marché 


tu ne dis toujours pas quel est le probleme x)
Commenter la réponse de nagaD.scar
Messages postés
21
Date d'inscription
jeudi 30 mai 2013
Dernière intervention
25 février 2017
0
Merci
Finis sans votre aide ,merci de signalé le sujet comme résolu,merci.
Commenter la réponse de stroke599

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.