Inscription / Connexion Nouveau Sujet
Niveau algorithmique
Partager :

Puissance 4 vérification des hauteurs languace c

Posté par
stan62113
12-04-14 à 16:36

Bonjour,

je dois programmer un puissance 4 dans le cadre de mes études, et je bloque pour vérifier les hauteurs

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

// algorithme puissance 4
int main()
{
int i, j, j1, j2, c, h, o;
int jeu[7][6];
int hauteur[7];
int v1, v2;
char rep,
printf("Bienvenue dans le jeu puissance 4 \n");
printf("Joueur 1: saisissez votre nom \n");
scanf("%d",&j1);
printf("joueur 2: saisissez votre nom \n");
scanf("%d",&j2);
//initialisation des variables
do
{
     v1=0, v2=0;
     // initialisation du tableau jeu
     for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
        {
           jeu[i][j] = 0;
        }
    
        }
    // Affichage du tableau jeu
     printf("---------------------------------------------------\n");
for (i = 0; i < 7; i++)
   {
     for (j = 0; j < 6; j++)
     {
     printf("| %d ", jeu[i][j]);
     if (jeu[i][j] = 0)
        {
        printf ("| \n");
        }
     if (jeu[i][j] != 0)
      {
       printf ("|X\n") || ("|O\n");
      }
     }
     printf("|\n");
    }
printf("---------------------------------------------------\n");
        
     do
       {
          printf("joueur 1 jouer \n");
          scanf("%d",&c);
     // verification des hauteurs
        

j'avais pensé à créer un tableau hauteur pour m'aider à vérifier les hauteurs et incrémenter les valeurs dans le tableau mais je sais pas trop comment m'y prendre


pour les verifications horizontale, verticale et diagonale pour savoir si le joueur a gagné je sais a peu près comment m'y prendre.

Posté par
stan62113
re : Puissance 4 vérification des hauteurs languace c 12-04-14 à 16:45

a effacer, poster dans le mauvais forum

Posté par
stan62113
Puissance 4 vérification des hauteurs languace c 12-04-14 à 16:46

Bonjour,

je dois programmer un puissance 4 dans le cadre de mes études, et je bloque pour vérifier les hauteurs

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

// algorithme puissance 4
int main()
{
int i, j, j1, j2, c, h, o;
int jeu[7][6];
int hauteur[7];
int v1, v2;
char rep,
printf("Bienvenue dans le jeu puissance 4 \n");
printf("Joueur 1: saisissez votre nom \n");
scanf("%d",&j1);
printf("joueur 2: saisissez votre nom \n");
scanf("%d",&j2);
//initialisation des variables
do
{
     v1=0, v2=0;
     // initialisation du tableau jeu
     for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
        {
           jeu[i][j] = 0;
        }
    
        }
    // Affichage du tableau jeu
     printf("---------------------------------------------------\n");
for (i = 0; i < 7; i++)
   {
     for (j = 0; j < 6; j++)
     {
     printf("| %d ", jeu[i][j]);
     if (jeu[i][j] = 0)
        {
        printf ("| \n");
        }
     if (jeu[i][j] != 0)
      {
       printf ("|X\n") || ("|O\n");
      }
     }
     printf("|\n");
    }
printf("---------------------------------------------------\n");
        
     do
       {
          printf("joueur 1 jouer \n");
          scanf("%d",&c);
     // verification des hauteurs
        

j'avais pensé à créer un tableau hauteur pour m'aider à vérifier les hauteurs et incrémenter les valeurs dans le tableau mais je sais pas trop comment m'y prendre


pour les verifications horizontale, verticale et diagonale pour savoir si le joueur a gagné je sais a peu près comment m'y prendre.

*** message déplacé ***
multipost interdit : si tu t'es trompé de forum, t'inquiète, un modo se charge de le déplacer

Posté par
stan62113
re : Puissance 4 vérification des hauteurs languace c 12-04-14 à 18:20

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

// algorithme puissance 4
int main()
{
int i, j,c, h, o;
int jeu[7][6];
int hauteur[6];
int v1, v2;
char rep;
char j1, j2;
printf("Bienvenue dans le jeu puissance 4\n");
printf("Joueur 1: saisissez votre nom:\n");
scanf("%c",&j1);
printf("joueur 2: saisissez votre nom\n");
scanf("%c",&j2);
//initialisation des variables
do
    {
     v1=0, v2=0;
     // initialisation du tableau jeu
     for (i = 0; i < 7; i++)
    {
        for (j = 0; j < 6; j++)
        {
           jeu[i][j] = 0;
        }
    
        }
    // Affichage du tableau jeu
     printf("---------------------------------------------------\n");
for (i = 0; i < 7; i++)
   {
     for (j = 0; j < 6; j++)
     {
     printf("| %d ", jeu[i][j]);
     if (jeu[i][j] = 0)
        {
        printf ("| \n");
        }
     if (jeu[i][j] != 0)
      {
       printf ("|X\n") || ("|O\n");
      }
     }
     printf("|\n");
    }
printf("---------------------------------------------------\n");
         //initialisation du tableau hauteur
     for (h = 0; h < 6; h++)
   {
    hauteur[h] = 0;
   }

     do
       {
          printf("joueur 1 jouer  choisissez une colonne  \n");
          scanf("%d",&c);
     // verification des hauteurs
          h==c;  
          if (hauteur[h]>5)
            {
                printf("joueur 1 rejouer une autre colonne");
                scanf("%d",&c);                 
        }
        }while(c<0||c>6);
    
o==hauteur[c];
jeu[c][o]==1;
h==c;
jeu[c][o++];


donc pour la hauteur j'aimerai savoir si c'est bon ce que je fais pour ne pas partir sur quelque chose qui ne marchera pas.
je creer un tableau hauteur que j'initialise
je demande au joueur 1 de jouer, il choisit une colonne
je dit que h = c ( le numéro de colonne)
et je me sert du tableau pour vérifier si la colonne n'est pas pleine
je me sert de mon tableau hauteur pour vérifier si la colonne est pleine, si elle est pleine le joueur rejoue
ensuite je dis que o =hauteur (c)
et je donne la valeur 1 à la colonne jouer avec jeu (c)(o)=1
j'incrément ensuite avec jeu (c) (o++).

mais je ne sais pas si ca peut fonctionner de cette manière...

Posté par
pgeod
re : Puissance 4 vérification des hauteurs languace c 12-04-14 à 22:08

J'ai bien compris que tu avais un tableau lignes/colonnes de dimension 6x7
Après initialisation, il n'y a que des 0. Après je sais pas ce que tu y mets...
Et je n'ai pas compris ce que tu appelais "hauteur". La troisième dimension du tableau ?

Posté par
stan62113
re : Puissance 4 vérification des hauteurs languace c 13-04-14 à 01:19



en faite c'est un jeu puissance 4 sous forme de tableau de 7 colonne et 6 ligne que je dois programmer
et je voudrais savoir  comment vérifier si la colonne est pleine et demander aux joueurs de rejouer une autre colonne si la colonne est pleine, j'essaye comme expliquer plus haut mais je bloque sur cette étape
Le tableau hauteur la doit sensé me servir a pouvoir vérifier si la colonne qu'a choisis le joueur est rempli ou non

Je bloque aussi quand il s'agit de remplir le tableau, ce que j'ai fais ne fonctionne pas quand je lance le programme ( ca bloque quand je demande a j1 de chosir une colonne)....

Posté par Profil Dlzlogicre : Puissance 4 vérification des hauteurs languace c 13-04-14 à 19:28

Bonjour,
Je vais vous donner un conseil avant toute chose : écrivez l'algorithme.
Ce qu'on appelle algorithme, c'est une description logique de toutes les opérations, écrit avec un langage compris par tout le monde. En l'occurrence le français.
Il y a des choses qui ne trompent pas, par exemple, quand on déclare un tableau de 6 lignes et 7 colonnes, on le déclare sous le forme T[6][7].
Autre exemple, votre tableau Hauteur ne sert à rien.
Le reste, j'ai pas regardé.
Donc, éteignez votre machine, prenez un papier et un crayon et écrivez l'algorithme de façon que tout le monde comprenne et que n'importe qui puisse le coder avec n'importe quel langage.
Quand cela sera fait, vous pourrez rallumer votre machine et coder votre programme en C, à partir de l'algorithme que vous avez écrit.  

Et quand vous l'aurez écrit avec 2 joueurs, vous pourrez remplacer le second joueur par la machine. C'est un peu plus difficile, mais ça vous permettra de jouer seul.

Posté par
fred1992
re : Puissance 4 vérification des hauteurs languace c 15-04-14 à 01:07

Citation :
et je voudrais savoir  comment vérifier si la colonne est pleine et demander aux joueurs de rejouer une autre colonne si la colonne est pleine, j'essaye comme expliquer plus haut mais je bloque sur cette étape


Salut. On peut représenter le jeu sous forme d'une matrice 6x7, jusque-là, tout va bien.

Si une case est vide, il me semble qu'en C, elle a la valeur null, ainsi, on pourrait boucler sur la colonne voulue et renvoyer true si l'une des cases est vide, false sinon.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !