Partage
  • Partager sur Facebook
  • Partager sur Twitter

debutant

Sujet résolu
    26 novembre 2008 à 21:20:51

    bonjour

    c'est juste que je commence a un peux a maitriser le début.
    bon serieux
    je le refais plus.
    enfin un truc qui fonctionne :p:p
    les pointeur o_O


    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <math.h>
    
    
    int main(int argc , char *argv[])
    {
    long nombre2=1;
    long ok= 1;
    
    do
    {
    long nombrecoup=0;
    long nombre=0, resultat=0;
    const long MAX=10, MIN=1;
    srand(time(NULL));
    resultat = (rand() % (MAX - MIN + 1)) + MIN;
    
    
    printf("quel estle nombre?");
    
    
    while(nombre!=resultat)
    {
    
    
    scanf("%ld",&nombre);
    nombrecoup =nombrecoup +1;
    
    
    if(nombre>resultat)
    {
        printf("c'est moins");
    }
    else if(nombre<resultat)
    {
        printf("c'est plus");
    }
    
     else
     {
         printf("jak pote");
         printf("\nnonbre de coup %ld",nombrecoup);
         printf("\nveut tu recommencer");
         printf("\ntape 1 pour oui tape 2 pour non\n");
    
         }
    }
    scanf("%ld",&ok);
    }while(nombre2==ok);
    
    
        return 0;
    
        }
    <position valeur="gauche"></position>
    
    </span>
    • Partager sur Facebook
    • Partager sur Twitter
      26 novembre 2008 à 21:30:18

      Salut,
      politesse, titre, interêt du topic ?
      Mauvaise utilisation du zcode ...
      Mais enfin tu veut qu'on face quoi de ton code ?

      Edit : je n'avais pas vu que c'était en quelque sorte une suite de topic, et la politesse figure désormais dans le topic, donc je ne dit plus rien ...
      • Partager sur Facebook
      • Partager sur Twitter
        26 novembre 2008 à 23:04:23

        Salut,

        En effet, il fonctionne. Mais tu as oublié un détail qui a beaucoup d'importance: tu as mis srand(time(null)) à l'intérieur de la boucle de jeu. Tu dois absolument le sortir de la boucle. En essayant ta solution, on se rend compte que la suite de nombre est croissante. Donc, suivant le temps mis pour rejouer, on peut facilement deviner dans quelle plage de valeur se situe le nombre.

        Sinon, pour la condition vérifiant si le joueur veut rejouer, tu pourrais utiliser une petite astuce te permettant d'économiser une variable :p Sachant qu'une condition renvoie 0 si c'est faux, tu peux oublier la variable nombre2 et faire un test de ce type: while(ok==1).

        Voilà,bonne soirée.
        • Partager sur Facebook
        • Partager sur Twitter
          26 novembre 2008 à 23:07:48

          Citation : rocklee.gt

          while(ok==1) ou encore while(ok).


          Ces deux tests ne sont pas équivalents, ok peut être vrai sans être égal à 1.
          • Partager sur Facebook
          • Partager sur Twitter
            26 novembre 2008 à 23:13:56

            srand((unsigned)time(NULL));
            
            pour ne pas générer le même nombre
            • Partager sur Facebook
            • Partager sur Twitter
              26 novembre 2008 à 23:14:53

              Je vois ce que tu veux dire mcyrb. Par contre je n'arrive pas à imaginer un exemple concret. Si tu en as un, ce serait gentil de me le montrer :D
              • Partager sur Facebook
              • Partager sur Twitter
                26 novembre 2008 à 23:17:50

                En C, un booleen est faux si il est egal a 0, vrai sinon.

                if(2) est vrai
                • Partager sur Facebook
                • Partager sur Twitter
                  26 novembre 2008 à 23:18:33

                  Citation : rocklee.gt

                  Je vois ce que tu veux dire mcyrb. Par contre je n'arrive pas à imaginer un exemple concret. Si tu en as un, ce serait gentil de me le montrer :D


                  Exemple: l'utilisateur saisit 2.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 novembre 2008 à 23:19:55

                    Tout nombre sauf 0 est vrai sinon c'est faux :p
                    • Partager sur Facebook
                    • Partager sur Twitter
                      26 novembre 2008 à 23:21:37

                      Ca doit être la fatigue... :-°
                      En tout cas merci de m'avoir corriger -> je corrige mon post.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 novembre 2008 à 1:38:31

                        Citation : relais

                        c'est juste que je commence a un peux a maitriser le début.
                        bon serieux
                        je le refais plus.
                        enfin un truc qui fonctionne :p:p
                        les pointeur o_O


                        Ton code est horriblement mal présenté et de plus pollué par des balises hors-sujet...

                        Je rappelle que Code::Blocks a un indenteur intégré (Plugins > AStyle)
                        #include <stdio.h>
                        #include <stdlib.h>
                        #include <time.h>
                        #include <math.h>
                        
                        int main (void)
                        {
                           long nombre2 = 1;
                           long ok = 1;
                        
                           do
                           {
                              long nombrecoup = 0;
                              long nombre = 0, resultat = 0;
                              const long MAX = 10, MIN = 1;
                              srand (time (NULL));
                              resultat = (rand () % (MAX - MIN + 1)) + MIN;
                        
                              printf ("quel estle nombre?");
                        
                              while (nombre != resultat)
                              {
                                 scanf ("%ld", &nombre);
                                 nombrecoup = nombrecoup + 1;
                        
                                 if (nombre > resultat)
                                 {
                                    printf ("c'est moins");
                                 }
                                 else if (nombre < resultat)
                                 {
                                    printf ("c'est plus");
                                 }
                                 else
                                 {
                                    printf ("jak pote");
                                    printf ("\nnonbre de coup %ld", nombrecoup);
                                    printf ("\nveut tu recommencer");
                                    printf ("\ntape 1 pour oui tape 2 pour non\n");
                                 }
                              }
                              scanf ("%ld", &ok);
                           }
                           while (nombre2 == ok);
                        
                           return 0;
                        }
                        
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Music only !
                          27 novembre 2008 à 20:50:31

                          bonjour,
                          je suis surpris par ton code alors que tu as posté celui la le même jour :
                          #include <stdio.h>
                          #include <stdlib.h>
                          
                          
                          long nombre(char *pnom);
                          
                          int main(int argc , char *argv[])
                          {
                          char repas ;
                          long poulet= 9;
                          long viande= 2;
                          long frite= 5;
                          char *pnom="repas";
                          repas = nombre(pnom);
                          printf("----menu----");
                          printf("\nvoila les repas , viande ,poulet ,frite");
                          printf("\nchoisi un repas\n");
                          scanf("%s",repas);
                          
                          if(9 == 9)
                          {
                          printf("ta manger du poulet");
                          }
                          else if (9 == 5 )
                           {printf("ta manger des frite");
                           }
                            else if ( 9 ==2)
                           {
                               printf("ta manger de la viande");
                           }
                          
                          
                          }
                          
                          
                          
                          long nombre(char *pnom)
                          {
                              pnom= 9;
                              return pnom;
                          }
                          



                          A mon sens, si tu veux progresser arrêtes le copier/coller, et essayes de comprendre ton code, tu y gagneras grandement............
                          @+
                          • Partager sur Facebook
                          • Partager sur Twitter

                          debutant

                          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                          • Editeur
                          • Markdown