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

C Discussion :

Jeu du nombre mystère


Sujet :

C

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut Jeu du nombre mystère
    Bonjour/Bonsoir tout le monde. Je suis débutant en codage, je débute avec le C sur CodeBlock. J'ai un TP avec le jeu du "nombre mystère" ou je du "plus ou moins". J'arrive à faire le code de base, mais mon problème se situe à l'approfondissement avec des niveaux de difficulté. J'y arrive pas. J'ai essayé avec "switch" mais ça passe pas. Je veux aussi prendre en compte la saisie d'erreurs, mais la console entre en boucle infinie. Pourriez-vous m'aider svp?? Merci.

  2. #2
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2016
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2016
    Messages : 16
    Par défaut
    Donne moi ton code complet je vais t'aider: je l'ai fait ^^
    Dans les grandes lignes ça va juste être une variable sur la valeur maximale que ton ordinateur va choisir. Ensuite avec un "if" tu pourras assigner telle ou telle valeur à cette variable et ainsi changer la difficulté.
    Tu vois ce que je veux dire? Maintenant sois tu as pas trouvé exactement comment faire soit tu l'as mal fait ce qui est normal quand on débute c'est pour ça que j'ai besoin de ton code ^^

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut
    Ceci est le code source.

    Code C : 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
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
     
    void error1();
    int main()
    {
    int NbreMystere, NbreEntre, compteur = 0;
    int Min, Max;
    srand(time(NULL));
    char L1 = 'L1', L2 = 'L2', L3 = 'L3', choix;
    printf("Entrer L1 pour le niveau 1, L2 pour le niveau 2 et L3 pour le niveau3.\n");
    printf("Saisir votre choix: ");
    gets(choix);
        while ((choix != 'L1') || (choix != 'L2') || (choix != 'L3'))
        {
            error1();
            printf("Ressaisir votre choix: ");
            gets(choix);
        }
        switch (choix)
        {
        case 'L1':
            Min = 1, Max = 100, compteur = 0;
            NbreMystere = rand()%(Max - Min + 1) + Min;
            printf("Devinez le nombre: ");
            scanf("%d", NbreEntre);
            while ((NbreEntre != NbreMystere) && (compteur < 3))
            {
               printf("Entrer le nombre mystere: ");
               scanf("%d", &NbreEntre);
               if (NbreEntre < NbreMystere)
                 printf("Plus que ca\n");
               else if (NbreEntre > NbreMystere)
                printf("Moins que ca\n");
                compteur++;
            }
            if (compteur >= 3)
                printf("T'es un looser!!!!!\n");
            if (NbreEntre == NbreMystere)
                printf("Bravo!! Tu l'as en %d coups. Le nombre est bien %d.\n", compteur, NbreMystere);
                break;
        case 'L2':
            Min = 1, Max = 1000, compteur = 0;
            NbreMystere = rand()%(Max - Min + 1) + Min;
            printf("Devinez le nombre: ");
            scanf("%d", NbreEntre);
            while ((NbreEntre != NbreMystere) && (compteur < 3))
            {
               printf("Entrer le nombre mystere: ");
               scanf("%d", &NbreEntre);
               if (NbreEntre < NbreMystere)
                 printf("Plus que ca\n");
               else if (NbreEntre > NbreMystere)
                printf("Moins que ca\n");
                compteur++;
            }
            if (compteur >= 3)
                printf("T'es un looser!!!!!\n");
            if (NbreEntre == NbreMystere)
                printf("Bravo!! Tu l'as en %d coups. Le nombre est bien %d.\n", compteur, NbreMystere);
                break;
        case 'L3':
            Min = 1, Max = 10000, compteur = 0;
            NbreMystere = rand()%(Max - Min + 1) + Min;
            printf("Devinez le nombre: ");
            scanf("%d", NbreEntre);
            while ((NbreEntre != NbreMystere) && (compteur < 3))
            {
               printf("Entrer le nombre mystere: ");
               scanf("%d", &NbreEntre);
               if (NbreEntre < NbreMystere)
                 printf("Plus que ca\n");
               else if (NbreEntre > NbreMystere)
                printf("Moins que ca\n");
                compteur++;
            }
            if (compteur >= 3)
                printf("T'es un looser!!!!!\n");
            if (NbreEntre == NbreMystere)
                printf("Bravo!! Tu l'as en %d coups. Le nombre est bien %d.\n", compteur, NbreMystere);
                break;
        }
     
     
        return 0;
    }
     
    void error1()
    {
        printf("Veuillez revoir votre choix svp!!!");
    }
    Fichiers attachés Fichiers attachés
    • Type de fichier : c main.c (2,9 Ko, 497 affichages)

  4. #4
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Juin 2016
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2016
    Messages : 16
    Par défaut
    Tu te casses trop la tête. ^^
    Un programmeur c'est un énorme flemmard tu ne dois pas l'oublier ^^
    Alors! Après "srand(time(NULL));"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    int choix = 0;
    printf(Quel mode souhaitez-vous? \n\n1.facile \n2.moyen \n3.difficile);
    scanf("%d", &choix);
    et ensuite avec un switch tu assignes la valeur qui correspond à facile, moyen ou difficile (par exemple 50, 100 ou 200) à la variable max.
    Ensuite seulement le programme devra choisir le nombre mystère et là tu fais la boucle pour tester les valeurs rentrées par l'utilisateur.

  5. #5
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char L1 = 'L1', L2 = 'L2', L3 = 'L3', choix;
    Deja ça compile pas , mais c'est normal comment veut tu mettre dans un char une chaine de caractere au juste ? strcpy doit être utilisé.

    gets attends une chaîne de caractère (un tableau de char si tu préfère).

    on doit utiliser strcmp.

    Le code est mal indenté (au début) , ensuite switch/case doit être utilisé pour des entier principalement.

    Pour ma part il faut relire un cours/tutoriel pour assimilé au moins le B.A.BA du C , vu que la c'est clairement pas assimilé.

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut
    Merci. J'ai essayé "switch/case" avec des entier, ça marche. Merci beaucoup.

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2016
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2016
    Messages : 98
    Par défaut
    Quel cours me conseillez-vous ?

  8. #8
    Expert confirmé

    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Avril 2002
    Messages
    2 888
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 888
    Par défaut
    Les meilleurs cours sont tout simplement ici : Cours de C et en complément la FAQ C.
    Ca semble peu etre un peu plus difficile à première vue mais au moins tu peux vraiment apprendre quelque chose...

Discussions similaires

  1. Jeu du mot mystère
    Par jca dans le forum Codes sources à télécharger
    Réponses: 0
    Dernier message: 03/02/2013, 17h15
  2. [Débutant] Réalisation jeux nombre mystère
    Par thomasaurelien dans le forum VB.NET
    Réponses: 4
    Dernier message: 30/01/2013, 00h46
  3. Jeu du nombre
    Par Neuromancien2 dans le forum Scheme
    Réponses: 5
    Dernier message: 17/12/2011, 10h24
  4. [Source] Nombre mystère
    Par Musclor13 dans le forum Contribuez
    Réponses: 1
    Dernier message: 14/12/2008, 13h43

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