J'ai un probleme de compilation avec dev cpp

Fermé
papa - 21 oct. 2007 à 19:32
sfel Messages postés 1640 Date d'inscription lundi 18 juin 2007 Statut Membre Dernière intervention 15 juillet 2009 - 21 oct. 2007 à 21:41
Bonjour,
j'ai un probleme avec dec cppqui m'affiche
syntaxe error before "tp"(qui est une de mes variables)
voici le code
#include <stdio.h>
#include <stdlib.h>
#define ligne 5
#define colonne 6

main()
{
typedef char tab[ligne][colonne];
typedef int tampon[colonne];
int i,j,plein=0,c;
tab t;
tampon tp;
for(i=0;i<=5;i++)
for(j=0;j<=6;j++)
t[i][j]=' ';
while(plein==0)
{
printf("%s\n%s\n","joueur1","dans quelle colonne jouez vous?");
scanf("%d\n",&c);
while((c>6) || (tp[c]>=6))
{
printf("%s\n","colonne pleine ou invalide");
printf("%s\n","choisissez en une autre");
scanf("%d\n",&c);
}
t[5-tp[c]][c]='x';
tp[c]+=1;
plein=1;
for(j=0;j<=6;j++)
if tp[j]<=5
plein=0;
if plein==0
{
printf{"%s\n%s\n","joueur2","dans quelle colonne jouez vous?");
scanf("%d\n",&c);
while((c>6) || (tp[c]>=6))
{
printf("%s\n","colonne pleine ou invalide");
printf("%s\n","choisissez en une autre");
scanf("%d\n",&c);
}
t[5-tp[c]][c]='o';
tp[c]+=1;
plein=1;
for(j=0;j<=6;j++)
if tp[j]<=5
plein=0;
}
}
printf("%s","le jeu est terminé");
system("PAUSE");
return 0;
}



je vous prie de bien vouloir me venir en aide
A voir également:

1 réponse

sfel Messages postés 1640 Date d'inscription lundi 18 juin 2007 Statut Membre Dernière intervention 15 juillet 2009 430
21 oct. 2007 à 21:41
voila ton code corrigé

j'explique les modifications, après celui-ci

#include <stdio.h>
#include <stdlib.h>
#define ligne 5
#define colonne 6

int main()
{
	typedef char tab[ligne][colonne];

	typedef int tampon[colonne];

	int i,j,plein=0,c;
	tab t;
	tampon tp;

	for(i=0;i<=5;i++)
		for(j=0;j<=6;j++)
			t[i][j]=' ';

	while(plein==0)
	{
		printf("%s\n%s\n","joueur1","dans quelle colonne jouez vous?");
		scanf("%d",&c);

		while((c>6) || (tp[c]>=6))
		{
			printf("%s\n","colonne pleine ou invalide");
			printf("%s\n","choisissez en une autre");
			scanf("%d",&c);
		}

		t[5-tp[c]][c]='x';
		tp[c]+=1;
		plein=1;

		for(j=0;j<=6;j++)
			if (tp[j]<=5)
				plein=0;

		if (plein==0)
		{
			printf("%s\n%s\n","joueur2","dans quelle colonne jouez vous?");
			scanf("%d",&c);

			while((c>6) || (tp[c]>=6))
			{
				printf("%s\n","colonne pleine ou invalide");
				printf("%s\n","choisissez en une autre");
				scanf("%d",&c);
			}

			t[5-tp[c]][c]='o';
			tp[c]+=1;
			plein=1;

			for(j=0;j<=6;j++)
				if (tp[j]<=5)
					plein=0;
		}
	}

	printf("%s","le jeu est terminé");
	system("PAUSE");

	return 0;
} 


- en ligne 37, 40 et 47, il te faut mettre les conditions du "if" entre parenthèses.



- également ligne 42,
j'ai remplacer ton

printf{"%s\n%s\n","joueur2","dans quelle colonne jouez vous?");

par

printf("%s\n%s\n","joueur2","dans quelle colonne jouez vous?");




- il y avait une accolade à la place de la parenthèse, juste après ton printf.



- enlevé les \n dans tes scanf



- et puis, j'ai mis "main" de type int, car en fonction des compilateurs, c'est pas automatique...

voili voilou
0