Partage
  • Partager sur Facebook
  • Partager sur Twitter

Vos jeux en C

defis

Anonyme
30 décembre 2005 à 20:10:55

Bonjour à tous,
Je me disais que pour nous entrainer un peu (avec ce que l' on a déjà vu en C), nous pourrions nous lancer des défis. Par exemple des jeux, ... Et que dans une case secrète,
Secret (cliquez pour afficher)
Case secrète :D

on indique la réponse au défi, un code source du jeux.

Vous me suivez ? :-°

Par exemple, aujourd' hui, j' ai codé un jeu des allumettes (on doit enlever 1, 2 ou 3 allumettes et celui qui retire la dernière a perdu). Je vous propose donc de coder un jeu des allumettes. Je vous donnerai les sources plus tard.

Donc je résume :
Nom du jeu
Explication du principe du jeu
Code non connu qui devra éventuellement être utilisé dans la programmation du jeu

Voila.

Defi n°1
Jeu des allumettes
Joueur VS Ordinateur : chaqu' un à son tour enlève 1, 2 ou 3 allumettes. Celui qui retire la dernière allumette pert. Vous pouvez commencer avec le nombre d' allumettes que vous voulez
Aucun code non connu


Bonne chance
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 20:27:27

Moi J'embarque!!!! Même si je suis vraiment debutant! je m,y met tout de suite :D
Et bonne idée, je me cherchai justement des tp en attendant la suite du cours, mais j'ai une question, c'est le Joueur qui décide le nombre d'allumette???
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 20:44:17

Je suis aussi partant :D le problème est que je sais exactement ce qu'il faut faire, sauf la fin, je me demande comment on pourra dire qui à gagner lol ^^
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 20:55:49

Je crois que si il reste une allumette, c'est à celui que le tour revien qui perd.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:01:34

Et bien merci à vous deux !!
je vous donne le code du jeux des allumettes

Secret (cliquez pour afficher)


#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
        // Declarations des variables
        int nombreAllumette = 12;
        int nb, nombreJoueur, nombreOrdinateur = 0;
        do
        {
                // Image des allumettes
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n \n");
               
                // Nombre d' allumettes que prend le joueur
                printf ("Combien d' allumettes voulez vous prendre ? 1, 2 ou 3 ?  ");
                scanf ("%1d", &nombreJoueur);

                // Calcule du nombre d' allumettes restantes
                nombreAllumette = nombreAllumette - nombreJoueur;
                printf ("Il reste %d allumette(s) !", nombreAllumette);
                printf ("\n\n");

                // Si il reste 0 allumette le joueur a perdu
                if (nombreAllumette == 0)
                {
                        printf ("La partie est terminee ! \n\n");
                        printf ("Vous avez perdu \n\n\n");
                        system("PAUSE");     
                        return 0;
                }

                // Image des allumettes
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n");
                for (nb = 1; nb <= nombreAllumette; nb++)
                {
                        printf ("|  ");
                }
                printf ("\n \n");

                // Nombre d' allumettes prisent par l' ordinateur
                switch (nombreAllumette)
                {
                        case 1:
                                nombreOrdinateur = 1;
                        break;
                        case 2 :
                                nombreOrdinateur = 1;
                        break;
                        case 3:
                                nombreOrdinateur = 2;
                        break;
                        case 4 :
                                nombreOrdinateur = 3;
                        break;
                        case 5:
                                nombreOrdinateur = 2;
                        break;
                        case 6 :
                                nombreOrdinateur = 1;
                        break;
                        case 7 :
                                nombreOrdinateur = 2;
                        break;
                        case 8 :
                                nombreOrdinateur = 3;
                        break;
                        case 9 :
                                nombreOrdinateur = 2;
                        break;
                        case 10 :
                                nombreOrdinateur = 1;
                        break;
                        case 11 :
                                nombreOrdinateur = 2;
                        break;
                }
                printf ("L' ordinateur prend %d allumette(s). \n" , nombreOrdinateur);
       
                // Calcule du nombre d' allumettes restantes
                nombreAllumette = nombreAllumette - nombreOrdinateur;
                printf ("Il reste %d allumette(s) !", nombreAllumette);
                printf ("\n\n");

                // Si il reste 0 allumette le joueur a gagne
                if (nombreAllumette == 0)
                {
                        printf ("La partie est terminee ! \n\n");
                        printf ("Vous avez gagne \n\n\n");
                        system("PAUSE");     
                        return 0;
                }

        } while (nombreAllumette >= 0);

        system("PAUSE");     
        return 0;
}



Pour la fin par exemple si il reste une allumette et que le joueur doit jouer, il perd car il prend la derniere. Et vice versa si c' est l' ordinateur. J' oubliais, il faut faire une "inteligence artificielle" :p . Juste dire à l' ordibateur combien d' allumettes il doit prendre si il en reste 10 par exemple. Moi j'ai fait le code avec 12 allumettes et j' ai utilisé un "switch", pour les différents cas.
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:05:55

Pff falait pas donner le code si tôt !

Un autre défi ? :)
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:10:04

Non non pas maintenant svp ^^" attendez un peu lol. Son code marche peut-être mais est super long. Je suis d'en coder un, petit mais qui à pas l'air de marcher mdrr

Have fun ^^
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:11:07

Désolé mais le code n'ai pas affiché obligatoirement, si tu ne veux pas le voir, il ne faut pas cliquer sur le case.

Voila un deuxième

Jeu du plus ou moins
C'est le même but que dans le TP de Matéo mais ici on peut choisir : le nombre de joueur et le niveau. A la fin on devra savoir quel est le joueur qui a trouvé le nombre et quel était le nombre.
Aucun code non connu


Attention Voici le source
Ne pas regarder tant que votre projet n' est pas fini


Secret (cliquez pour afficher)


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

int main (int argc, char** argv)
{
        // Initialisation des variables
        int nombreMystere = 0, nombreJoueur = 0, nombreTours = 1;
    const long MIN = 1;
        long MAX = 0;
        int niveauJeu = 1, multiJoueur = 1;

        // Choix du nombre de joueurs
        printf ("=== Nombre de joueurs === \n \n");
        printf ("Je choisis : ");
        scanf ("%1d", &multiJoueur);
        printf ("\n----------------------------------------- \n \n");

        // Choix du niveau
        printf ("=== Niveau de jeu === \n \n 1. Facile (1-100) \n 2. Moyen (1-1000) \n 3. Dur (1-10000) \n \n");
        printf ("Je choisis le niveau : ");
        scanf ("%1d", &niveauJeu);
        printf ("\n----------------------------------------- \n \n");
       
        // Definition de la variable MAX
        switch (niveauJeu)
        {
                case 1 :
                        MAX = 100;
                break;
                case 2 :
                        MAX = 1000;
                break;
                case 3 :
                        MAX = 10000;
                break;
                default :
                        MAX = 100;           
        }

        // Choix du nombre mystere
        srand(time(NULL));
        nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
       
        // Trouver le nombre mystere pour un joueur
        if (multiJoueur == 1)
        {
                do
                {
                        printf ("Dites un nombre ! ");
                        scanf ("%d", &nombreJoueur);

                        if (nombreJoueur > nombreMystere)
                                printf (">>> Plus petit !\n \n");
                        else if (nombreJoueur < nombreMystere)
                                printf (">>> Plus grand !\n \n");
                        else
                        {
                                printf ("Le nombre mystere etait bien %d \n \n", nombreMystere);
                                system("PAUSE");
                                return 0;
                        }
                } while (nombreJoueur = nombreMystere)
        }

        // Trouver le nombre mystere pour plus de un joueur
        else if (multiJoueur >= 2)
        {
                do
                {
                        while (nombreTours <= multiJoueur)
                        {
                                printf ("Dites un nombre joueur numero %d ! ", nombreTours);
                                scanf ("%d", &nombreJoueur);

                                if (nombreJoueur > nombreMystere)
                                        printf (">>> Plus petit !\n \n----------------------\n \n");
                                else if (nombreJoueur < nombreMystere)
                                        printf (">>> Plus grand !\n \n----------------------\n \n");
                                else
                                {
                                        printf ("Le nombre mystere etait bien %d ! Bien joueur numero %d \n \n", nombreMystere, nombreTours);
                                        system("PAUSE");
                                        return 0;
                                }
                                nombreTours ++;
                        }
                        nombreTours = 1;
                } while (nombreJoueur = nombreMystere)
        }
        system("PAUSE");
        return 0;
}

  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:11:42

Have Fun of course ^^


J'ai pas trés bien compris ton sense de plusieurs joueurs !
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:15:04

Pour l'intelligence artificielle, il y a plus simple que de gérer tous les cas possibles (même si ce n'est qu'à partir de 12)

Vu que pour gagner, il faut qu'il reste un multiple de 4 + 1 (exemple: 5 (4+1) ou 13 (12+1)), donc il suffit de faire une fonction qui renvoit le nombre a enlever en fonction de celles qui reste:

long NombreAEnlever(long nombreTotal)
{
     long nombreAEnlever = nombreTotal % 4;
     nombreAEnlever = 3 - nombreAEnlever;
     if(nombreAEnlever == 0)
     {
          nombreAEnlever = 1;
     }
     return nombreAEnlever;
}


Avec ça, il essaiera toujours de laisser un multiple de 4+1.

Pour ce qui est du:
     if(nombreAEnlever == 0)
     {
          nombreAEnlever = 1;
     }

Il se produit si il reste déjà un multiple de 4+1, donc on ne peut pas retirer assez d'allumettes pour laisser un multiple de 4+1, donc je lui demande de retirer 1 allumette (vous pouvez effectuer les fonctions srand et rand pour qu'il tire au hasard entre 1 et 3)

Bien sûr, une fois qu'il réussi à laisser un multiple de 4+1... il a d'office gagner :D
On peux également tirer un nombre aléatoire entre 1 et 2, si c'est 1 on envoie la fonction qui renvoie le meilleur nombre possible d'allumettes à enlever et si c'est 2, on envoie un nombre au hasard. :p
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:15:36

Private joke: ça devrait rappeler quelques souvenirs a M@teo ! Le celebre jeu de nim ...
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:18:37

Pour le multijoueur :
Si tu décide de jouer à 5 joueurs, la console devra afficher

- Quel est votre nombre joueur 1 ?
...
- Quel est votre nombre joueur 5 ?

Si tu joue a 100, il devra aller jusqu' a 1000 joueurs. Voila.

> BoudboulMan : Je n' y avais pas pensé ^^ Merci
> lolo : C' est lui qui m'en a donné l' idée :D
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:19:52

Mrd vous etes rapides et ce qui est du code d'intelligence artificiel, je ne comprend absolument rien...
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:23:44

Le code de "IA" dit simplement que si il reste 3 allumettes il doit en prendre 2, comme ça le joueur est obligé de prendre la dernière allumettes et perd. Il fait de même avec les autres. :p
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:26:44

Un petit défi? Bon, un programme qui afiche tous les multiples de 232 entre 0 et n(onner par l'utilisateur).
(Quoi c'es simple? Oui ben se seras pour els plus débutants)
Voici le code c++ ^^
Secret (cliquez pour afficher)
#include <iostream>

int main()
{
    int Count;
    std::cout << "Jusca combien voulez vous lister les multiples?" << '\n';
    std::cin >> Count;
    for(int i = 233; i <= Count; i++)
      if( i%232 == 0 )
            std::cout << i << std::endl;
        return 0;
}
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:35:18

Bon moi je jou le role du traitre, car j'ai un probleme avec mon code lol, donc je le post et vous demande de m'aider à le corriger o_O

C'est pour le jeu des allumettes
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main(int argc, char *argv[])
{
  long nbr = 0, nbrordi = 0, nbrallu = 10, resultat= 10;
  long MAX = 3, MIN = 1;
  srand(time(NULL));
nbrordi= (rand() % (MAX - MIN + 1)) + MIN;
nbr= (rand() % (MAX - MIN + 1)) + MIN;

  printf("==bienvenu dans le jeux des allumettes== \n\n\n");
  printf("==But du Jeu==\n");
  printf("Tu ne dois pas enlever la derniere allumette, tu as le droit d'en enlever 1<3\n\n");
  printf("**Creat by Snakif for SiteDuZero**\n");
do {
  printf("Il y a %d allumettes, combien veux-tu en enlever?\n", resultat);
  scanf("%d", &nbr);
  if (nbr > 3)
  printf("tu sais pas lire ou quoi mon Zero? :p un chiffre entre 1 et 3!\n");
  resultat = nbrallu - (nbrordi + nbr);
}  while (nbrallu != 0);
  if (nbrallu == 0)
  printf("Le jeu est finit\n");
  system("PAUSE");     
  return 0;
}


Voilà ca ne marche pas, sa me renvoi des chiffres que je veux pas! :(
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
30 décembre 2005 à 21:41:45

JC Master >
voila mon code
Secret (cliquez pour afficher)


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

int main (int argc, char** argv)
{
        int nombre, nb = 1, resultat;
    printf ("Dites un nombre  ");
        scanf ("%d", &nombre);
        printf ("\n \n");
        while (nombre >= nb)
        {
                resultat = nb * 232;
                printf ("%d \n", resultat);
                nb++;
        }
    system("PAUSE");
    return 0;
}


^^
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:54:51

Bon en ce qui me concerne, mon code marche mais c'est codé à la barbare donc je préfère le reprendre demain pour le poster

JC_Master -> pourquoi t'utilises pas un


using namespace std;


plutot que de t'embeter à foutre des std:: de partout ?
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:57:25

Mon code est completement mort enfaites mdrrr ^^ faut utiliser des booléens sa serra plus simple. Je verrai ca si j'ai le temps demain. Sinon excellent topic ^^
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 21:57:52

pour le programme sur les multiples, voilà mon code:
Secret (cliquez pour afficher)
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    long nombre=0, valeur_max=0, multiple=0, nbr_multiples=0;
    long i=0;
   
    printf("De quel nombre voulez-vous chercher les multiples?\n");
    scanf("%ld", &nombre);
   
    printf("Les multiples doivent etre compris entre 0 et: ");
    scanf("%ld", &valeur_max);
   
    //on calcul le nombre de multiples du nombre dans l'intervalle
    nbr_multiples = (valeur_max-(valeur_max % nombre))/nombre;
   
    //on affiche tous les multiples
    for( i=1; i<=nbr_multiples; i++)
    {
        multiple = nombre * i;
        printf("%ld\n", multiple);
    }
 
    system("PAUSE");   
    return 0;
}
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 22:14:51

Ahhhh que je l'aime BoudBoulMan ^^ il post des code en C que je PEUX comprendre !
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 22:25:09

Ce qui va de paire avec les multiples, c'est les diviseurs! :p
Si vous avez compris le programme pour les multiples, celui des diviseurs est plus facile.

Secret (cliquez pour afficher)
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    long diviseur=0, nombre=0, i=0;
   
    printf("Tapez le nombre dont vous cherchez les diviseurs.\n");
    scanf("%ld", &nombre);
   
    printf("Diviseurs de %ld:\n", nombre);
   
    for( i=1; i<=nombre; i++)
    {
        diviseur = nombre % i;
        if(diviseur==0)
            printf("%ld\n", i);
    }
 
    system("PAUSE");   
    return 0;
}


Citation : W!nn!3

Ahhhh que je l'aime BoudBoulMan ^^ il post des code en C que je PEUX comprendre !


Merci ^^
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 22:30:05

Bon je propose mon petit défi :

Defi n°3
Le pile ou face
Le joueur lance la piece et parie sur le coter sur laquel la piece va tomber avec son argent, si il gagne sa mise est multiplié par 2 et ajouté a son argent sinon la mise est soustrait de ses gains...Si il tombe en dessous de zéro il a perdu
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 22:50:23

Salut à tous,
J'ai essayé de faire le jeu des allumettes mais j'ai un problème: meme si il reste plus de 1 allumette il marque toujours que j'ai perdu :(
voici le code (attention c'est lourd et c'est moche :D ):
Secret (cliquez pour afficher)
#include <cstdlib>
#include <iostream>
#include <time.h>
int main(int argc, char *argv[])
{
    g2:;
    long l1=12;
    long l2;
    long l3;
    long l4;
    long l5;
    long l6;
    long l7;
    const long MAX = 1, MIN = 2;
     const long MAX2 = 3, MIN2 = 1;
    printf("Jeu d'allumettes\n");
    while (l1>0)
    {
          g1:;
printf("\ncombien d'allumettes voulez-vous enlevez?\n");
scanf("%ld",&l2);
if (l2>3)
{
         printf("vous ne pouvez enlever que trois allumettes dans un meme tour\n");
         goto g1;
         }
         l1=l1-l2;
         printf("il reste %ld allumettes\n",l1);
         l3=l1;
           while (l3>0)
          {
                printf("|");
                l3--;
                }
         l7=l1;
          if (l7=1)
         {
                        printf("\nvous avez perdu \n 1 rejouer \n 2 quitter");
                        scanf("%ld",&l6);
                      switch (l6)
{
case 1:
  goto g2;
  break;
case 2:
  system("PAUSE");
    return EXIT_SUCCESS;
  break;
}
}
         srand(time(NULL));
   l5 = (rand() % (MAX - MIN + 1)) + MIN;
   if (l5=1)
   {
            l2 = l1 % 4;
            l2 = 3 - l2;
            if (l2=0)
            {
                     l2=1;
                     }
                     }
                     if (l5=2)
                     {
                     srand(time(NULL));
   l5 = (rand() % (MAX - MIN + 1)) + MIN;
   l5=l2;
   }
   l1=l1-l2;
   printf("il reste %ld allumettes",l1);         
    l3=l1;
      while (l3>0)
          {
                printf("|");
                l3--;
                }
                l7=l1;
         if (l7=1)
         {
                        printf("\nl'ordinateur a perdu \n 1 rejouer \n 2 quitter");
                        scanf("%ld",&l6);
                      switch (l6)
{
case 1:
  goto g2;
  break;
case 2:
  system("PAUSE");
    return EXIT_SUCCESS;
  break;
}
         }
         }
    system("PAUSE");
    return EXIT_SUCCESS;
}

j'prefer le mettre dans une balise spoiler parceq'uon sait jamais pour ceux qui visite le topic....
edit:j'ai utiliser "l'IA" de boudboulman
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:04:13

#include <cstdio> demande d'indiquer using namespage std; après les directive de préprocesseur, sinon, il faut faire: #include <stdio.h>


Pour les étiquettes (ou label), je ne pense pas qu'il faille des ; à la fin.

Donc g1:; devient g1:, mais les labels sont à éviter... préfère à cela des boucles, c'est souvent plus facile à lire.

l1 = l1 - l2;
peut s'écrire: l1 -= l2;
(les programmeurs sont fainéants ;) )


conseils:
  • essaie de mettre des noms de variables plus compréhensibles, qui permettent de mieux s'y retrouver.
  • indente ton fichiers, là on arrive pas bien à voir si telle boucle englobe tels instructions, etc...
  • utilise la balise de code pour faciliter encore la lecture ;)


et sinon en lisant vite...
je vois:
l7 = l1;
if(l7==l1)
{
//joueur a perdu
}


donc c'est logique que le joueur perde tout le temps ^^
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:12:47

Je viens poster la reponse du défi du pile ou face.

Voila le code :D

Secret (cliquez pour afficher)
#include <stdio.h>
#include <stdlib.h>



int main(int argc, char *argv[])
{
  /*---Initialisation des variables---*/
 
  long argent = 60;
  long mise, coter, coterChoisi, argentGagner = 0;
 
 
                     /*---Accueil---*/
 
    printf("\n                   **** Bienvenue dans le pile ou face ! ****");
   
    while( argent >= 0)
    {     
           printf("\n\n------------------------------------------------------");
           printf("\n\nVous avez %ld piece", argent);
           
           
           printf("\n\nCombien misez vous : ");
           scanf("%ld", &mise);
           
           if(mise <= 0)
           {
                   printf("\n\nVotre mise doit etre superieure a zero !!");
                   printf("\nRemisez : ");
                   scanf("%ld", &mise);
           }
           else
           {
                   printf("\n\nTres bien vous avez misez %ld euros !!", mise);
           }
           
           
           printf("\n\nSur quel coter de la piece misez vous ?");
           printf("\n1.Pile\n2.Face : ");
           scanf("%ld", &coterChoisi);
           
           printf("\n\nAppuyer sur une touche pour lancer la piece !");
           getch();
           
           srand(time(NULL));
           coter = (rand() % (2 - 1 + 1)) + 1;
     
           

                   
                   printf("La piece est lance, elle retombe.");
                   if(coter == coterChoisi)
                   {
                            printf("\n\nOuai vous avez gagnez !!");
                            argent = argent + (mise * 2);
                            argentGagner = mise * 2;
                            printf("\n\nVous gagnez %ld", argentGagner);
                   }
                   else
                   {
                       printf("\n\nVous avez perdu...");
                       argent = argent - mise;
                       
                       printf("\n\nVous perdez ", mise);
                   }

    } 

  return 0;
}

  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:15:43

Citation : BoudBoulMan

<information>#include <cstdio> demande d'indiquer using namespage std; après les directive de préprocesseur, sinon, il faut faire: <gras>#include
<puce>utilise la balise de code pour faciliter encore la lecture ;) </puce>
</liste>


j'ai dis que j'le mettait dans la balise spoilé pour evité que quelmqu'un tombe dessus sans le vouloir ....

Citation : BoudBoulMan


et sinon en lisant vite...
je vois:

l7 = l1;
if(l7==l1)
{
//joueur a perdu
}



donc c'est logique que le joueur perde tout le temps ^^


haha mais si tu lisait moins vite tu verrais qu'il y a marqué:

if(l7=1)
{
//joueur a perdu
}

d'ailleur quand je met le "==" le programme plante à l'execution.
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:22:46

Citation : dOsSpr0uTosS

Citation : BoudBoulMan

<information>#include <cstdio> demande d'indiquer using namespage std; après les directive de préprocesseur, sinon, il faut faire: <gras>#include
<puce>utilise la balise de code pour faciliter encore la lecture ;) </puce>
</liste>


j'ai dis que j'le mettait dans la balise spoilé pour evité que quelmqu'un tombe dessus sans le vouloir ....


Tu peux mettre deux balises en une (d'ailleurs, regarde les autres, il y a toujours une balise code dans une balise secret ;) )

Citation : dOsSpr0uTosS


haha mais si tu lisait moins vite tu verrais qu'il y a marqué:


if(l7=1)
{
//joueur a perdu
}


d'ailleur quand je met le "==" le programme plante à l'execution.


if(l7=1) donne if(1) ce qui fait que la condition est toujours remplie et on rentre d'office, c'est l7==1 (je sais pas pourquoi ça plante mais ça doit être ça :p )

Sinon pour le programme de W!nn!3, j'ai vu quelques erreurs, d'abord si on a 0 euros et continue a jouer :-°

while(argent>=0) -> while(argent>0)

et aussi on peut miser plus que ce qu'on a o_O
  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:24:43

Ah oui merde, je viens de le coder a l'arrache et j'ai la tête dans le CUl !!
je vais reprendre sa et je repost ;)

Edit : Comme promis, correction :

Secret (cliquez pour afficher)
#include <stdio.h>
#include <stdlib.h>



int main(int argc, char *argv[])
{
  /*---Initialisation des variables---*/
 
  long argent = 60;
  long mise, coter, coterChoisi, argentGagner = 0;
 
 
                     /*---Accueil---*/
 
    printf("\n                   **** Bienvenue dans le pile ou face ! ****");
   
    while( argent > 0)
    {     
           printf("\n\n------------------------------------------------------");
           printf("\n\nVous avez %ld piece", argent);
           
           
           printf("\n\nCombien misez vous : ");
           scanf("%ld", &mise);
           
           if(mise <= 0)
           {
                   printf("\n\nVotre mise doit etre superieure a zero !!");
                   printf("\nRemisez : ");
                   scanf("%ld", &mise);
           }
           else
           {
                   if(mise > argent)
                   {
                   printf("Vous ne pouvez pas misez autant !!");
                   printf("\nRemisez : ");
                   scanf("%ld", &mise);
                   }
                   else
                   {
                       printf("Tres bien vous avez misez %ld pieces", mise);
                   }
           }
           
           printf("\n\nSur quel coter de la piece misez vous ?");
           printf("\n1.Pile\n2.Face : ");
           scanf("%ld", &coterChoisi);
           
           printf("\n\nAppuyer sur une touche pour lancer la piece !");
           getch();
           
           srand(time(NULL));
           coter = (rand() % (2 - 1 + 1)) + 1;
     
           

                   
                   printf("La piece est lance, elle retombe.");
                   if(coter == coterChoisi)
                   {
                            printf("\n\nOuai vous avez gagnez !!");
                            argent = argent + (mise * 2);
                            argentGagner = mise * 2;
                            printf("\n\nVous gagnez %ld", argentGagner);
                   }
                   else
                   {
                       printf("\n\nVous avez perdu...");
                       argent = argent - mise;
                       
                     
                   }

    } 
printf("Vous n'avez plus d'argent , vous avez perdu !!");
getch();
return 0;

}

  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2005 à 23:32:07

j'viens d'essayé avec

if (l7<2)
{
//joueur a perdu
}

ca plante toujours :/
  • Partager sur Facebook
  • Partager sur Twitter