Partage
  • Partager sur Facebook
  • Partager sur Twitter

Tp 1 + Ameliorations + nouveau mode de jeu, Vos reactions Svp... ?

Des bugs, des ameliorations encore ?? dites moi tout !

Sujet résolu
    25 décembre 2005 à 22:31:25

    Moi j ai fini le Tp enfin du moins se qu a demander Mateo...

    Le jeu avec des niveaux de difficulter
    le mode deux joueur
    le compteur de coups
    la possibiliter de rejouer ou non

    Et psi uen fosi que j avais fait sa sa ma inspirer pour un nouveau jeu donc je l ai inclu avec et y marche en plsu lol trouver tout seul ^^

    Regle du jeu
    Additioner ou Soustraire un chiffre choisi au ==
    hasard par L ordinateur. ==
    Exemple Pour avoir le resultat voulu juste : ==
    Resultat voulu = 10
    Le compte est bon partie lancer :
    3+? (vous taper donc 7 car 7 + 3 = 10)
    7 (appuyez sur Entree pour valider)
    15+? (un nouveau nombre choisi au hasard)
    -5 (vous taper donc -5 car 15 + (-5) = 10)

    Le But du jeu

    Accumuler un maximum de points en un minimum de temps



    Vous pouver le tester chez vous avec ma source
    /*

    D apres les sources de M@teo.

    Par Orbital Digital, pour les amelioratiosn demander lors
    du Tp1 des cours du Site Du Zero : www.siteduzero.com

    Creeer le : 23/12/2005

    */



    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>


    int main ( int argc, char** argv )
    {
            long nombreMystere = 0, difficulte = 0, PlusOuMoins = 0;
            const long MAX = 100, MIN = 1;
            long  comptcoups = 0, nombrejoeur = 0, pret = 0;
            long continuerpartie = 1,ModeDeJeux = 0,Difficulterjeux2 = 0;
            long nombreResultat = 0,ChiffreHasard = 0,nombreMystereJeux2 = 0;
            long joueurCestTromper = 0, finipartie = 0,debutpartie = 0;

            // Génération du nombre aléatoire
            srand(time(NULL));
        nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;



        /* le message de bienvenue */
        printf ("-= le Jeu du Plsu ou Moins par Orbital Digital =-\n");
        printf ("( Tp 1 www.siteduzero.com )\n\n\n");
        printf ("#####################################################\n\n\n");

        //boucle pour continuer la partie
        do
        {
        if (continuerpartie == 1)
        {//3 debut de la partie
       
       
        // choix du Mode de Jeux
        do
        {
        printf("Choix du Jeux ?\n\n\n");
        printf("1. Le Jeu du Plus Ou Moins\n\n     Trouver un nombre Mystere\n\n\n\n");               
        printf("2. Le jeu du Compte est Bon\n\n     Additionner un chiffre pour trouver le bon compte\n\n\n\n");
        printf("\n\nQuel Mode de Jeux?");
        scanf("%ld", &ModeDeJeux);

        printf("\n");
        if (ModeDeJeux == 1)
        {
           printf ("==>  Le jeu du Plus ou Moins.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else if (ModeDeJeux == 2)
        {
           printf ("==>  Le jeu du Compte est Bon.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else
           printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
           }while( ModeDeJeux < 1 || ModeDeJeux > 2 );



        // choix du nombre de joueur
        do
        {
        if (ModeDeJeux == 1)
        {// Debut Premier JEUX /////////////////////////////////////////////////////
        do
        {
        printf("Choix du Nombre de joeurs ?\n\n\n");
        printf("1. Un Joeur\n");
        printf("2. Deux Joeur\n");
        printf("\n\nNombre de joeur?");
        scanf("%ld", &nombrejoeur);

        printf("\n");
        if (nombrejoeur == 1)
        {
           printf ("==>  Vous avez choisi le Mode Un Joeur.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else if (nombrejoeur == 2)
        {
           printf ("==>  Vous avez choisi le Mode Deux Joeur.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else
           printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
           }while( nombrejoeur < 1 || nombrejoeur > 2 );

        // choix du niveau de difficulte
        do
        {
        printf("Choisiez votre niveau de Difficulte\n\n\n");
        printf("1. Easy\n\n");
        printf("2. Normal\n\n");
        printf("3. Hard\n\n");
        printf("4. Beta Test\n    *Beta Test nombre Compris entre 1 et 2*");
        printf("\n\nDifficulte que vous avez choisi?");
        scanf("%ld", &difficulte);

        printf("\n");
       
        if (difficulte == 1)
        {
           printf ("==>  Vous avez choisi le Niveau Easy.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else if (difficulte == 2)
        {
           printf ("==>  Vous avez choisi le Niveau Normal.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else if (difficulte == 3)
        {
           printf ("==>  Vous avez choisi le Niveau Hard.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else if (difficulte == 4)
        {
           printf ("==>  Vous avez choisi le Niveau Beta Test.\n\n\n");
           printf ("#####################################################\n\n\n");
           }
        else
           {
           printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
           }
           }while( difficulte < 1 || difficulte > 4 );
       

        /* conditiosn du nombre de joeur et des difficultes */
        do
        {   
        /*un joeur*/
        if (ModeDeJeux == 1 && nombrejoeur == 1 && difficulte == 1)
        {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Easy\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==   Un nombre entre 1 et 100 a ete selectionner   ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
           const long MAX = 100, MIN = 1;
           srand(time(NULL));
           nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
           }
        else if (ModeDeJeux == 1 && nombrejoeur == 1 && difficulte == 2)
        {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Normal\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==   Un nombre entre 1 et 1000 a ete selectionner  ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
           const long MAX = 1000, MIN = 1;
           srand(time(NULL));
           nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
           }
        else if (ModeDeJeux == 1 && nombrejoeur == 1 && difficulte == 3)
        {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Hard\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==  Un nombre entre 1 et 10000 a ete selectionner  ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
           const long MAX = 10000, MIN = 1;
           srand(time(NULL));
           nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
           }
        else if (ModeDeJeux == 1 && nombrejoeur == 1 && difficulte == 4)
        {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Hard\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==    Un nombre entre 1 et 2 a ete selectionner   ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
           const long MAX = 2, MIN = 1;
           srand(time(NULL));
           nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
           }



           /* deux joeur */
        else if (ModeDeJeux == 1 && nombrejoeur == 2 && difficulte == 1)
        {
              do
              {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Easy\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==      Joeur 1 Choisi Un nombre entre 1 et 100    ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
              const long MAX = 100, MIN = 1;
              printf (" Joeur 1 taper le chiffre mystere a faire trouver au joeur 2 : ");
              scanf("%ld", &nombreMystere);
           
              if (nombreMystere < 1 || nombreMystere > 100)
              {
                             pret = 1;
                             }
                             
              else
              {
              printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
              }
              }while (nombreMystere < 1 || nombreMystere > 100);
              }
           
        else if (ModeDeJeux == 1 && nombrejoeur == 2 && difficulte == 2)
        {
              do
              {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Normal\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==      Joeur 1 Choisi Un nombre entre 1 et 1000   ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
              const long MAX = 1000, MIN = 1;
              printf (" Joeur 1 taper le chiffre mystere a faire trouver au joeur 2 : ");

              scanf("%ld", &nombreMystere);
              if (nombreMystere < 1 || nombreMystere > 1000)
              {
                             pret = 1;
                             }
              else
              {
              printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
              }
              }while (nombreMystere < 1 || nombreMystere > 1000);
              }
           
        else if (ModeDeJeux == 1 && nombrejoeur == 2 && difficulte == 3)
        {
              do
              {
           printf (" Vous avez choisi le Mode %ld Joeur et la difficulte Hard\n\n\n", nombrejoeur);
           printf ("=====================================================\n");
           printf ("==                 www.qgkiller.com                ==\n");
           printf ("==                                                 ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n");       
           printf ("==     Joeur 1 Choisi Un nombre entre 1 et 10000   ==\n");
           printf ("==*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*==\n")
           printf ("==                                                 ==\n");
           printf ("==            Jeux editer Par Orbital Digital      ==\n");     
           printf ("=====================================================\n\n");
              const long MAX = 10000, MIN = 1;
              printf (" Joeur 1 taper le chiffre mystere a faire trouver au joeur 2 : ");

              scanf("%ld", &nombreMystere);
              if (nombreMystere < 1 || nombreMystere > 10000)
              {
                             pret = 1;
                             }
              else
              {
              printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
              pret = 0;
              }
              }while (nombreMystere < 1 || nombreMystere > 10000);
              }
        }while (pret == 1); // fin des reglages du jeux



        /* Trouver le nombre mystere */

        do
        {
        if (nombrejoeur == 1) /* MODE UN JOUEUR */
        {
            do
            {
                    // On demande le nombre
                        printf ("un nombre a ete selectioner au hasard alors d apres vous\n\n");
                    printf ("Quel est ce nombre ?");
                    scanf("%ld", &PlusOuMoins);
                    comptcoups++;

                    // On compare le nombre entré avec le nombre mystère

                    if (nombreMystere > PlusOuMoins)
                    {
                            printf("\n Rate c'est Plus de %ld !\n\n", PlusOuMoins);
             }

                    else if (nombreMystere < PlusOuMoins)
                    {
                            printf("\n Rate c'est Moins de %ld !\n\n", PlusOuMoins);
             }
                    else // Si le nombre n'est ni inférieur ni supérieur, c'est qu'il est égal, donc c'est bon !
                    {
                            printf ("\n\nBravo, vous avez trouve le nombre mystere !!!\n\n");
                            printf ("Vous avez trouve le nombre mystere en %ld coups\n", comptcoups);
             }
            }while (PlusOuMoins != nombreMystere);
           
         continuerpartie = 4;
        }
        else if (nombrejoeur == 2) /* MODE DEUX JOEUR */
        {
             do
             {
                    // On demande le nombre au joeur 2
            printf ("un nombre a ete selectioner Par le Joeur 1 alors d apres vous\n\n");
                    printf ("Quel est ce nombre ?");
                    scanf("%ld", &PlusOuMoins);
                    comptcoups++;

                    // On compare le nombre entré avec le nombre mystère

                    if (nombreMystere > PlusOuMoins)
                    {
                            printf("\n Rate c'est Plus de %ld !\n\n", PlusOuMoins);
             }

                    else if (nombreMystere < PlusOuMoins)
                    {
                            printf("\n Rate c'est Moins de %ld !\n\n", PlusOuMoins);
             }
                    else // Si le nombre n'est ni inférieur ni supérieur, c'est qu'il est égal, donc c'est bon !
                    {
                            printf ("\n\nBravo, vous avez trouve le nombre mystere !!!\n\n");
                            printf ("Vous avez trouve le nombre mystere en %ld coups\n", comptcoups);
             }
            }while (PlusOuMoins != nombreMystere);
        }
        }while (continuerpartie == 2);
       
        /*
        Recommencer uen partie #####################################################
        */

        do
        {
        // boucle fin de la partie continuer ?
        printf("Voulez vous Rejouer ?\n\n\n");
        printf("1. Oui\n");
        printf("2. Non\n");
        printf("\n\nVous continuer?")
        scanf("%ld", &continuerpartie);

        printf("\n");
        printf("#####################################################\n\n\n");
       
        if (continuerpartie == 1)
        {
             continuerpartie = 1,comptcoups = 0, nombrejoeur = 0, pret = 0,ModeDeJeux = 0;
         }
        else if (continuerpartie == 2)
        {
             continuerpartie = 2;
         }
        else if (continuerpartie > 2)
        {
              printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
              continuerpartie = 0;
         }
         
        /* Fin du jeu*/
        //4 fin de la partie
        }while (continuerpartie == 2);


        }    // fin premier JEU ///////////////////////////////////////////////////
       
    /* *-*-*-*-*-*-*-*-* JEUX 2 JEUX 2 JEUX 2 -*-*-*-*-*-*-*-*-*-*-*-* */
        else if (ModeDeJeux == 2);
        {
        printf ("Bienvenue dans le Jeu du compte est Bon\n\n\n");
        printf ("===========================================================\n");
        printf ("==                    Regle du jeu                       ==\n");
        printf ("==  Additioner ou Soustraire un chiffre choisi au        ==\n");
        printf ("==  hasard par L ordinateur.                             ==\n");
        printf ("==  Exemple Pour avoir le resultat voulu juste :         ==\n");
        printf ("==                                                       ==\n");
        printf ("==  Resultat voulu = 10                                  ==\n");
        printf ("==  Le compte est bon partie lancer :                    ==\n");
        printf ("==  3+?          (vous taper donc 7 car 7 + 3 = 10)      ==\n");
        printf ("==  7            (appuyez sur Entree pour valider)       ==\n");
        printf ("==  15+?         (un nouveau nombre choisi au hasard)    ==\n");
        printf ("==  -5           (vous taper donc -5 car 15 + (-5) = 10) ==\n");
        printf ("===========================================================\n");
        printf ("==                    Le But du jeu                      ==\n");
        printf ("==                                                       ==\n");
        printf ("== Accumuler un maximum de points en un minimum de temps ==\n");
        printf ("===========================================================\n\n\n");
        do
        {
        printf("\nLes differents Niveaux de Difficulte :\n\n");
        printf("1. Resultat egal a 10\n");
        printf("2. Resultat egal a 100\n");
        printf("3. Resultat egal a 1000\n");
        printf("4. Resultat choisi au Hasard entre 10 et 100\n");
        printf("5. Resultat choisi au Hasard entre 100 et 1000\n\n");
        printf("Quel Difficulte vous avez choisr?");
        scanf("%ld", &Difficulterjeux2);
       
        printf("\n");
        if (Difficulterjeux2 == 1)
        {
        const long MAX = 9, MIN = 1;
        nombreResultat = 10;
        }
        else if (Difficulterjeux2 == 2)
        {
        const long MAX = 99, MIN = 1;
        nombreResultat = 100;
        }
        else if (Difficulterjeux2 == 3)
        {
        const long MAX = 999, MIN = 1;
        nombreResultat = 1000;
        }
        else if (Difficulterjeux2 == 4)
        {
        const long MAX = 100, MIN = 10;
        srand(time(NULL));
        nombreResultat = (rand() % (MAX - MIN + 1)) + MIN;
        }
        else if (Difficulterjeux2 == 5)
        {
        const long MAX = 1000, MIN = 100;
        srand(time(NULL));
        nombreResultat = (rand() % (MAX - MIN + 1)) + MIN;
        }
        else
        {
        printf ("!! ATTENTION : Selectionner un choix valide Merci !!\n\n\n");
        }
        }while ( Difficulterjeux2 < 1 || Difficulterjeux2 > 5 );
       
        /* Debut de al partie Du Compte est Bon*/
        printf ("Resultat Voulu %ld: \n\n", nombreResultat);
        debutpartie = 123;
       
        while (finipartie != 007007)
        {
            do
            {
                    // On demande le nombre
        srand(time(NULL));
        const long MAX, MIN;
        ChiffreHasard = (rand() % (MAX - MIN + 1)) + MIN;
            printf ("%ld +?", ChiffreHasard);
            scanf("%ld", &nombreMystereJeux2);
            comptcoups++;

            // On compare le nombre entré avec le nombre mystère
            if (nombreMystereJeux2 + ChiffreHasard != nombreResultat) // Si le joeur c est tromper
            {
            printf ("\n\nVous avez fait %ld Compte Bon De suite !\n\n", comptcoups);
            finipartie = 007007;
            comptcoups = 0;
        }
       
            }while (finipartie == 007007);
        }
        }/* FIN Du JEUX COMPTE EST BON */
        }while (continuerpartie == 2);

        }
        }while (1);
    system("PAUSE");
    return 0;
    }
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      25 décembre 2005 à 22:38:29

      Salut , alors voilà mon avis perso ( en dehors de ton script ):
      Pour le jeu du chiffre mystere , c'est pas mal , il faudrait du nouveau lol car tout el monde a deja fait mode 2 joueurs et autres .
      Sinon le deuxieme jeu est pas mal ,c'est une tres bonne idee par contre du devrait mieux expliquer le but car la premiere fois je comprenait pas pourquoi sa continuais :).
      Sa serais sympa pour le deuxieme jeu si il ya avait une sorte de chronometre qui comptait aussi le temps qu'il faudrait pour aller aux 50 resultat bon par exemple .

      Bon jeux au final continus comme sa .
      Hybrix

      EDIT : Ah j'oubliais tu doit avoir un probleme avec une boucle car dans le jeu numero 1 quand j'ai voulu recommencer sa ma envoyer au choix de la difficultee du second jeu :(
      • Partager sur Facebook
      • Partager sur Twitter
        25 décembre 2005 à 22:58:11

        Merci je verais sa demain, la tout de suite je fait une revision et approndissement du HTML pour passer enfin au PHP.

        Dans une heure au dodo, sniff déja ! Pourtant ma soif de connaissance
        est encore affamé :(

        tchao ^^

        Eh ! ! ! ! J'ai Failli Oublier !

        Joyeux Noêl à Tous... :D
        • Partager sur Facebook
        • Partager sur Twitter
          26 décembre 2005 à 0:34:23

          Tu as chaque fois refais le code pour chaque difficulté, poutant il y a plus simple.
          Il suffit de faire ton code une fois avec quelques variables dont la valeur change selon la difficulté au lieu de recopier le même code en ne changeant qu'une ligne.
          Ca sert à ça les variables.

          De plus ce n'est pas très bien indenté, ce qui rend la lecture plus difficile.
          • Partager sur Facebook
          • Partager sur Twitter
            26 décembre 2005 à 1:21:28

            Il serait temps d'apprendre les fonctions :-°
            Sinon c'est bien beau mais si tu veux faire original fait un algorithme qui te permetra de resoudre en un minimum de coups. C'est plus interessant à coder que faire plusieurs niveaux ect...
            • Partager sur Facebook
            • Partager sur Twitter
              26 décembre 2005 à 10:37:31

              Oui, mais comment on fait un algorithme...

              Sa me dit rien a moisn que j ai louper un episode dans le cours de M@teo.

              Si c'est le cas je vais tout relire pour etre sûr.

              Merci encore.
              • Partager sur Facebook
              • Partager sur Twitter

              Tp 1 + Ameliorations + nouveau mode de jeu, Vos reactions Svp... ?

              × 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