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 :

[débutant] Un petit problème avec mon code


Sujet :

C

  1. #1
    Membre actif Avatar de Muesko
    Profil pro
    Collégien
    Inscrit en
    Mai 2006
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mai 2006
    Messages : 249
    Points : 204
    Points
    204
    Par défaut [débutant] Un petit problème avec mon code
    Salut, j'ai un petit souci avec ce code qui quand je l'éxécute se déroule anormalement : Si ce que l'utilisateur entre est mauvais, normalement le programme lui redemande de taper un nombre jusqu'a que ce soit bon.

    Voici le code et je comprend pas mon erreur

    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
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
     
    int main(int argc, char *argv[])
    {
      long entre = 0, hasard = 0; /*Déclaration des varialbes et constantes utilisées par le programme*/
      const long MAX = 100, MIN = 0;
     
     
      do /*Début de la boucle, si hasard est égal à entre alors on sort de la boucle*/
      {
     
         srand(time(NULL)); /*On fait générer à l'ordinnateur une nombre aléatoire*/
         hasard = (rand() % (MAX - MIN + 1)) + MIN;
     
         printf("=-Plus ou moins-=\n");
         printf("Tapez votre estimation :) : ");
         scanf("%ld", &entre);
         printf("Vous avez taper %ld\n", entre);
     
         if(hasard > entre)
            {
             printf("C'est plus !\n");
            }
     
         if(hasard < entre)
            {
             printf("C'est moins !\n");
            }       
     
      }while (entre =! hasard);
     
     
      printf("Bravo !");
     
      system("PAUSE");	
      return 0;
    }
    Voila si quelqu'un veut bien m'expliquer ça serait super sympa !

    Merci

  2. #2
    Membre éclairé Avatar de stephl
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2007
    Messages
    643
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2007
    Messages : 643
    Points : 771
    Points
    771
    Par dé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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    
    int main(int argc, char *argv[])
    {
      long entre = 0, hasard = 0; /*Déclaration des varialbes et constantes utilisées par le programme*/
      const long MAX = 100, MIN = 0;
      
      
      do /*Début de la boucle, si hasard est égal à entre alors on sort de la boucle*/
      {
                 
         srand(time(NULL)); /*On fait générer à l'ordinnateur une nombre aléatoire*/
         hasard = (rand() % (MAX - MIN + 1)) + MIN;
      
         printf("=-Plus ou moins-=\n");
         printf("Tapez votre estimation :) : ");
         scanf("%ld", &entre);
         printf("Vous avez taper %ld\n", entre);
      
         if(hasard > entre)
            {
             printf("C'est plus !\n");
            }
      
         if(hasard < entre)
            {
             printf("C'est moins !\n");
            }       
    
      }while (entre =! hasard);
      
      
      printf("Bravo !");
      
      system("PAUSE");	
      return 0;
    }
    L'opérateur différent, c'est !=. Remarque supplémentaire: sortir le srand() de la boucle.

  3. #3
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    Apparemment, un nombre aléatoire est tiré à chaque choix que l'utilisateur se trompe...

    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    #include <time.h>
     
    int main()
    {
        /* Déclaration des varialbes et constantes utilisées par le programme */
        long entre = 0, hasard = 0;
        const long MAX = 100, MIN = 0;
     
        /* On fait générer à l'ordinnateur une nombre aléatoire */
        srand(time(NULL));
        hasard = (rand() % (MAX - MIN + 1)) + MIN;
     
        /*Début de la boucle, si hasard est égal à entre alors on sort de la boucle */
        do {
     
            printf("=-Plus ou moins-=\n");
            printf("Tapez votre estimation :) : ");
            scanf("%ld", &entre);
            printf("Vous avez taper %ld\n", entre);
     
            if (hasard > entre) {
                printf("C'est plus !\n");
            }
     
            if (hasard < entre) {
                printf("C'est moins !\n");
            }
     
        } while (entre != hasard);
     
        printf("Bravo !");
     
        return 0;
    }

  4. #4
    Membre actif Avatar de Muesko
    Profil pro
    Collégien
    Inscrit en
    Mai 2006
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Mai 2006
    Messages : 249
    Points : 204
    Points
    204
    Par défaut
    Merci à vous deux ca marche bien à présent.

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

Discussions similaires

  1. [MySQL] problème avec mon code (envoi données) ?
    Par cuisto44000 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 20/12/2007, 09h45
  2. Un tout petit problème avec mon menu contextuel
    Par jbrasselet dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/10/2007, 15h40
  3. probléme avec mon code JAVA et MYSQL
    Par ulysse031 dans le forum JDBC
    Réponses: 5
    Dernier message: 10/05/2007, 00h46
  4. [débutant]2 petits problèmes avec JDialog
    Par pingoui dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 18/02/2007, 19h46
  5. Petit problème avec un code : besoin de votre aide :)
    Par loicdu4000 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/09/2006, 18h02

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