begin process at 2012 05 29 10:15:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

je cherche comment remplir un tableau par entrée de la ligne et la colonne


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

je cherche comment remplir un tableau par entrée de la ligne et la colonne

jeudi 18 décembre 2008 à 15:27:44 | je cherche comment remplir un tableau par entrée de la ligne et la colonne

leo170390

bonjour!

je suis en train de réaliser un puissance 4, qui nécessite l'entré de la ligne et de la colonne pour afficher une valeur dans le tableau, par exemple b4, ou f5.

c'est un peu stupide d'entrer la ligne car la colonnes suffit mais c'est un projet à rendre dans mon école et il veulent absolument que notre programme lise lignes et colonnes.

Si quelqun veut bien m'aider, je lui serais très très reconnaissant !
Merci
jeudi 18 décembre 2008 à 15:29:06 | Re : je cherche comment remplir un tableau par entrée de la ligne et la colonne

leo170390

au fait, voici mon code :

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#include <time.h>

// Début du programme principal

int main()

 

 

{

//Déclaration des variables

int i,j,num,num1,ligne;

int h1,h2,h3,h4,h5,h6,i1,i2,i3,i4,i5,i6;

char k;

int matchnul;

int game=1;

int rejoue;

char regles;

int quitter;

int etiquette;

char jeu[6][6];

int gagne, gagne2;

int choix;

char nom1[20], nom2[20],rep,o;

 

//Initialisation de certaines variables

regles=0;

 

 

//Affichage de la page de presentation:

while(game==1)

{rejoue=0;

gagne=0;

gagne2=0;

k='a';

i1=0;i2=0;i3=0;i4=0;i5=0;i6=0;

h1=0;h2=0;h3=0;h4=0;h5=0;h6=0;

matchnul=0;

 

 

 

system("color E0");

printf("\n\n\n\n\a");

printf("\t\t********************************************\n");

printf("\t\t* *\n");

printf("\t\t* PUISSANCE 4 *\n");

printf("\t\t* par *\n");

printf("\t\t* Leopold Michaud *\n");

printf("\t\t* *\n");

printf("\t\t********************************************\n\n\n");

printf("%c ",17);

 

 

printf("bienvenue dans le puissance 4 %c\n\nvoulez vous lire les regles ? (o/n)\n\n",16);

scanf("%c", &regles);

if (regles=='o')

{

system("cls");

printf("Le plateau de jeu est une grille verticale.\nLorsque l'on glisse un pion dans une colonne, le pion descend jusqu'en bas.\nLe jeu se joue à deux. Chaque joueur dispose de son type de pion (%c et %c).\nTour à tour les joueurs posent un pion dans une colonne.\nCelui qui gagne est celui qui aligne le premier\n au moins quatre pions de sa couleur.\nSi la grille est pleine, sans avoir aligné quatre pions, \nc'est un match null.\n\n", 1, 2);

}

 

 

printf("menu: choisissez votre mode de jeu\n\n");

printf("1) Joueurs Humains\n");

printf("\n2) Joueur vs ordi\n\n");

scanf("%d", &choix);

printf("\n\n\n");

system("cls");

switch(choix)

{

case 1 :

choix=0;

//Saisie des noms des deux joueurs:

printf("\n\n\n\tNom du premier joueur:\n\n");

scanf("%s",nom1);

printf("\n\n");

printf("\n\n\tNom du second joueur:\n\n");

scanf("%s",nom2);

system("cls");

// Initialisation du tableau: toutes les cases sont vides

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

jeu[i][j]=' ';

}

}

//Affichage du plateau de jeu vide

printf("\n\n | 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf(" |---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

printf("%c",k);

k++;

for(i=0;i<6;i++)

{

printf("| %c",jeu[i][j]);

}

printf("|\n");

printf(" |---|---|---|---|---|---|\n");

}

printf("\n\n\n");

k='a';

 

//Le joueur 1 joue

while (gagne!=1 && gagne!=2)

{

matchnul++;

if(matchnul>35)

{

printf("match nul !\n\n");

printf("voulez vous rejouer?\n1) oui\n\n2) non\n\n");

scanf("%d",&rejoue);

gagne=0;

gagne2=0;

k=0;

i1=0;i2=0;i3=0;i4=0;i5=0;i6=0;

h1=0;h2=0;h3=0;h4=0;h5=0;h6=0;

system("cls");

break;

}

printf("\nA vous de jouer %s, donner un numero de colonne (de 1 à 6):\n",nom1);

scanf("%d",&num);

printf("\n");

 

 

 

//Test sur la hauteur des colonnes, si elle sont remplies ou non

if((num==1 && h1>5) || (num==2 && h2>5) || (num==3 && h3>5) || (num==4 && h4>5) || (num==5 && h5>5) || (num==6 && h6>5))

{

printf("la colonne %d est pleine, %s donner un numero de colone autre que %d \n",num,nom1,num);

scanf("%d",&num);

}

 

//Donne la valeur 1 à la case jouée par le joueur 1

if(num==1)

jeu[num-1][h1]=1;

if(num==2)

jeu[num-1][h2]=1;

if(num==3)

jeu[num-1][h3]=1;

if(num==4)

jeu[num-1][h4]=1;

if(num==5)

jeu[num-1][h5]=1;

if(num==6)

jeu[num-1][h6]=1;

system("cls");

printf("\n");

//Vérification horizontale pour savoir si le joueur a gagné:on balaye toutes les lignes de 0 à 6 en vérifiant 4 cases à chaque foisSi 4 cases qui se suivent valent 1 alors gagne prend pour valeur 1

for(i=0;i<4;i++)

{

for(j=0;j<5;j++)

{

if(jeu[i][j]==1 && jeu[i+1][j]==1 && jeu[i+2][j]==1 && jeu[i+3][j]==1)

gagne=1;

}

}

//Même chose mais verticalement maintenant

for(i=0;i<6;i++)

{

for(j=0;j<3;j++)

{

if(jeu[i][j]==1 && jeu[i][j+1]==1 && jeu[i][j+2]==1 && jeu[i][j+3]==1)

gagne=1;

}

}

//Et diagonale bas gauche vers haut droit

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==1 && jeu[i+1][j+1]==1 && jeu[i+2][j+2]==1 && jeu[i+3][j+3]==1)

gagne=1;

}

}

//Même chose pour les diagonales bas droite vers haut gauche

for(j=0;j<6;j++)

{

for(i=6;i>=0;i--)

{

if(jeu[i][j]==1 && jeu[i-1][j+1]==1 && jeu[i-2][j+2]==1 && jeu[i-3][j+3]==1)

gagne=1;

}

}

// Affichage de la grille

printf("\n | 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf(" |---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

printf("%c",k);

k++;

for(i=0;i<6;i++)

{

printf("| %c ",jeu[i][j]);

}

printf("|\n");

printf(" |---|---|---|---|---|---|\n");

}k='a';

// On incremente la hauteur d'une colonne à chaque fois que celle si est jouée:

if(num==1)

jeu[num][h1++];

if(num==2)

jeu[num][h2++];

if(num==3)

jeu[num][h3++];

if(num==4)

jeu[num][h4++];

if(num==5)

jeu[num][h5++];

if(num==6)

jeu[num][h6++];

if(gagne==1)

{

printf("\n\n\n\a%s gagne\a\n\n\n",nom1);

printf("voulez vous rejouer?\n1) oui\n\n2) non\n\n");

scanf("%d",&game);

 

system("cls");

break;

}

 

 

 

//meme demarche pour le joueur 2

printf("\nA vous de jouer %s, donner un numero de colonne (de 1 à 6):\n",nom2);

scanf("%d",&num1);

printf("\n");

if((num1==1 && h1>5) || (num1==2 && h2>5) || (num1==3 && h3>5) || (num1==4 && h4>5) || (num1==5 && h5>5) || (num1==6 && h6>5))

{

printf("la colonne %d est pleine, %s donner un numero de colone autre que %d \n",num1,nom1,num);

scanf("%d",&num1);

}

 

if(num1==1)

jeu[num1-1][h1]=2;

if(num1==2)

jeu[num1-1][h2]=2;

if(num1==3)

jeu[num1-1][h3]=2;

if(num1==4)

jeu[num1-1][h4]=2;

if(num1==5)

jeu[num1-1][h5]=2;

if(num1==6)

jeu[num1-1][h6]=2;

system("cls");

printf("\n");

 

 

for(i=0;i<4;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==2 && jeu[i+1][j]==2 && jeu[i+2][j]==2 && jeu[i+3][j]==2)

gagne=2;

}

}

for(i=0;i<6;i++)

{

for(j=0;j<3;j++)

{

if(jeu[i][j]==2 && jeu[i][j+1]==2 && jeu[i][j+2]==2 && jeu[i][j+3]==2)

gagne=2;

}

}

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==2 && jeu[i+1][j+1]==2 && jeu[i+2][j+2]==2 && jeu[i+3][j+3]==2)

gagne=2;

}

}

for(j=0;j<6;j++)

{

for(i=5;i>=0;i--)

{

if(jeu[i][j]==2 && jeu[i-1][j+1]==2 && jeu[i-2][j+2]==2 && jeu[i-3][j+3]==2)

gagne=2;

}

}

printf("\n | 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf(" |---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

printf("%c",k);

k++;

for(i=0;i<6;i++)

{

printf("| %c ",jeu[i][j]);

}

printf("|\n");

printf(" |---|---|---|---|---|---|\n");

}k='a';

if(num1==1)

jeu[num1][h1++];

if(num1==2)

jeu[num1][h2++];

if(num1==3)

jeu[num1][h3++];

if(num1==4)

jeu[num1][h4++];

if(num1==5)

jeu[num1][h5++];

if(num1==6)

jeu[num1][h6++];

if(gagne==2)

{

printf("\n\n\n\a%s gagne\a\n\n\n",nom1);

printf("voulez vous rejouer?\n1) oui\n\n2) non\n\n");

scanf("%d",&game);

 

system("cls");

break;

}

}

 

 

 

 

 

 

 

break;

case 2:

{

int hasard ;

srand ( time(NULL) );

 

// Initialisation du tableau toutes les cases prennent la valeur 0

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

jeu[i][j]=' ';

}

}

//Affichage du plateau de jeu vide

printf("\n\n| 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf("|---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

for(i=0;i<6;i++)

{

printf("| %c",jeu[i][j]);

}

printf("|\n");

printf("|---|---|---|---|---|---|\n");

}

printf("\n\n\n");

 

//Le joueur 1 joue

while (gagne!=1 && gagne!=2)

{

printf("\n\nA vous de jouer, donner un numero de colonne (de 1 à 6):\n");

scanf("%d",&num);

printf("\n");

 

 

//Test sur la hauteur des colonnes, si elle sont remplies ou non

if((num==1 && h1>5) || (num==2 && h2>5) || (num==3 && h3>5) || (num==4 && h4>5) || (num==5 && h5>5) || (num==6 && h6>5))

{

printf("la colonne %d est pleine, %s donner un numero de colone autre que %d \n",num,nom1,num);

num = -1;

}

 

//Donne la valeur 1 à la case jouée par le joueur 1

if(num==1)

jeu[num-1][h1]=1;

if(num==2)

jeu[num-1][h2]=1;

if(num==3)

jeu[num-1][h3]=1;

if(num==4)

jeu[num-1][h4]=1;

if(num==5)

jeu[num-1][h5]=1;

if(num==6)

jeu[num-1][h6]=1;

system("cls");

printf("\n");

//Vérification horizontale pour savoir si le joueur a gagné:on balaye toutes les lignes de 0 à 6 en vérifiant 4 cases à chaque foisSi 4 cases qui se suivent valent 1 alors gagne prend pour valeur 1

for(i=0;i<4;i++)

{

for(j=0;j<5;j++)

{

if(jeu[i][j]==1 && jeu[i+1][j]==1 && jeu[i+2][j]==1 && jeu[i+3][j]==1)

gagne=1;

}

}

//Même chose mais verticalement maintenant

for(i=0;i<6;i++)

{

for(j=0;j<3;j++)

{

if(jeu[i][j]==1 && jeu[i][j+1]==1 && jeu[i][j+2]==1 && jeu[i][j+3]==1)

gagne=1;

}

}

//Et diagonale bas gauche vers haut droit

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==1 && jeu[i+1][j+1]==1 && jeu[i+2][j+2]==1 && jeu[i+3][j+3]==1)

gagne=1;

}

}

//Même chose pour les diagonales bas droite vers haut gauche

for(j=0;j<6;j++)

{

for(i=6;i>=0;i--)

{

if(jeu[i][j]==1 && jeu[i-1][j+1]==1 && jeu[i-2][j+2]==1 && jeu[i-3][j+3]==1)

gagne=1;

}

}

// Affichage de la grille

printf("\n| 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf("|---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

for(i=0;i<6;i++)

{

printf("| %c ",jeu[i][j]);

}

printf("|\n");

printf("|---|---|---|---|---|---|\n");

}

// On incremente la hauteur d'une colonne à chaque fois que celle si est jouée:

if(num==1)

jeu[num][h1++];

if(num==2)

jeu[num][h2++];

if(num==3)

jeu[num][h3++];

if(num==4)

jeu[num][h4++];

if(num==5)

jeu[num][h5++];

if(num==6)

jeu[num][h6++];

if(gagne==1)

{

if(gagne==1)

printf("\n\n\n\avous gagnez\a\n\n\n");

printf("voulez vous rejouer?\n1) oui\n\n2) non\n\n");

scanf("%d",&game);

 

system("cls");

break;

 

}

 

//On remplace la valeur entrée par le joueur 2 par un nombre sélectonné aléatoirement entre 1 et 6

 

hasard= rand() % 6 ;

if(hasard==1)

jeu[hasard-1][h1]=2;

if(hasard==2)

jeu[hasard-1][h2]=2;

if(hasard==3)

jeu[hasard-1][h3]=2;

if(hasard==4)

jeu[hasard-1][h4]=2;

if(hasard==5)

jeu[hasard-1][h5]=2;

if(hasard==6)

jeu[hasard-1][h6]=2;

system("cls");

printf("\n");

 

 

for(i=0;i<4;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==2 && jeu[i+1][j]==2 && jeu[i+2][j]==2 && jeu[i+3][j]==2)

gagne=2;

}

}

for(i=0;i<6;i++)

{

for(j=0;j<3;j++)

{

if(jeu[i][j]==2 && jeu[i][j+1]==2 && jeu[i][j+2]==2 && jeu[i][j+3]==2)

gagne=2;

}

}

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

if(jeu[i][j]==2 && jeu[i+1][j+1]==2 && jeu[i+2][j+2]==2 && jeu[i+3][j+3]==2)

gagne=2;

}

}

for(j=0;j<6;j++)

{

for(i=5;i>=0;i--)

{

if(jeu[i][j]==2 && jeu[i-1][j+1]==2 && jeu[i-2][j+2]==2 && jeu[i-3][j+3]==2)

gagne=2;

}

}

printf("\n| 1 | 2 | 3 | 4 | 5 | 6 |\n");

printf("|---|---|---|---|---|---|\n");

for(j=5;j>=0;j--)

{

for(i=0;i<6;i++)

{

printf("| %c ",jeu[i][j]);

}

printf("|\n");

printf("|---|---|---|---|---|---|\n");

}

if(hasard==1)

jeu[hasard][h1++];

if(hasard==2)

jeu[hasard][h2++];

if(hasard==3)

jeu[hasard][h3++];

if(hasard==4)

jeu[hasard][h4++];

if(hasard==5)

jeu[hasard][h5++];

if(hasard==6)

jeu[hasard][h6++];

if(gagne==2)

{

if(gagne==2)

{

printf("\n\n\n\avous avez perdu\a\n\n\n");

printf("voulez vous rejouer?\n1) oui\n\n2) non\n\n");

scanf("%d",&game);

 

system("cls");

break;

}

}

}

 

 

 

break ;

 

 

}

//en cas de mauvaise entrée...

default:

printf("le nombre ne correspond à aucun choix,\nchoisissez entre 1 et 2. ");

}

 

 

 

}

 

 

 

 

 

 

 

}



Cette discussion est classée dans : ligne, cherche, tableau, colonne, remplir


Répondre à ce message

Sujets en rapport avec ce message

pb classe [ par JediMaster ] j'ai créé un tableau dynamique dans une classe comme ca:class MaClasse{public: int m_largeur; int m_hauteur; int** m_tableau; MaClasse(int lar,int hau Moyenne sur une colonne dans un tableau [ par pausecpp ] Bonjour,j'ai un tableau à deux dimensions tab[M][N] et je veux écrire une fonction qui renvoie la moyenne sur une colonne donnée. ( Exp. pour un tab[1 récupérer le nombre de valeurs identiques adjacentes dans un tableau [ par Pekele ] j'ai donc un tableau mur de 15*15 remplit de valeur. lorsque je choisis une valeur de ce tableau j'aimerais qu'il me comptabilise le nombre de valeur parser un fichier xml avec tinyxml [ par rabebs ] Bonjour tout le monde Je cherche à récupérer des valeurs des balises se trouvant sous d'autres balises comme:<pre class="alt2" dir="ltr" style="border Interpolation dans un tableau à 2 entrées [ par mitch40330 ] Bonjour, Pour un projet, je dois faire un code qui permette à partir d'une table d'entrées de définir une sortir. Par exemple la table suivante : - remplir un nombre dans un tableau [ par alex934 ] Bonjour, j'ai besoin de votre aide :) Voila je souhaite mettre un nombre stocké(int) dans un tableau exemple: int a=132; int tab[3]; je voudrais Comment peut on utiliser? [ par djibidl ] Bonsoir, Je suis un débutant en C et disons que c'est un langage qui me passionne et j'aimerai savoir certaines choses le concernant: 1_) Est ce qu'on mettre un fichier texte dans un tableau en C [ par snake57 ] Bonjour à tous, je me suis fais 3 petite fonction. La première me permet de récupérer le nombre de ligne dans un fichier texte. La seconde me renvoie test contenu d'une chaine de caractère [ par snakers07 ] bonjour, j'aimerai approfondir une fonction, c'est à dire je possède uen chaine de caractère ici : ChaineRéponse, j'aimerai pouvoir tester son contenu tableau static [ par MBALHOUSSE ] salut,J'ai besoin de remplir un tableau static de 60 elements.il est trés facile d'écrir par exemple--------------------------------------------------


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,387 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales