Jeu du morpion [Résolu]

Messages postés
3
Date d'inscription
vendredi 27 mai 2011
Dernière intervention
2 juin 2011
- - Dernière réponse : coucou747
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Dernière intervention
30 juillet 2012
- 2 juin 2011 à 22:00
bonjour a tout!

je suis debutant en programmation java et je dois ecrire un programme sur le jeu du morpion. la taille du tableau n est pas fixe. cela depandra de l utilisateur. mon probleme se situt au niveau de compte du nombre des pions.
sur la diagonal gauche , j ai ecris ceci:
for (i=0;i<= ligne;i++){
for(j=0;j< colone;j++) {
if((t[i][j]!=' ')&&(t[i][j]==t[i+1] [j+1])&&(t[i][j]==t[i+2][j+2])&&(t[i][j]==t[i+3][j+3])&&(t[i][j]==t[i+4][j+4]))
test=true;
}
}
}
sur la diagonal droite:
for (i=1;i<=ligne;i++){
for(j=4;j<colone;j++) {
if((t[i][j]!=' ')&&(t[i][j]==t[i+1][j-1])&&(t[i][j]==t[i+2][j-2])&&(t[i][j]==t[i+3][j-3])&&(t[i][j]==t[i+4][j-4]))
tes=true;
}
}
}
deja le calcul sur les diagonaux ne fonctionne pas et on nous a recommande de fair le calcul sur la diagonal gauche et droite, vers le haut et vers le bas. je n arrive pas vraiment a saisir comment je pourais effectue ces calculs.un joueur gagne s il a aligne 4 pions. Merci d avance s il y a une proposition pour moi.
a bientot.
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Dernière intervention
30 juillet 2012
3
Merci
bon alors ...

d'une part, tu ne dis pas ce qui ne fonctionne pas dans ton code, d'est dur de t'aider.

t'as une exception de lancée ?

ensuite, ce que je te dis c'est que t'as un accès a une case de ton tableau qui n'existe pas. j'ai rien dit de plus moi.

Merci coucou747 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 103 internautes ce mois-ci

Commenter la réponse de coucou747
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Dernière intervention
30 juillet 2012
0
Merci
Bonjour,

for (i=1;i<=ligne;i++){
dans cette boucle, tu testes [i+1]

i est <= a ligne donc
i +1 est <= a ligne +1

c'est euh... en java, faire tab[tab.length + 1] c'est sur de planter...
Commenter la réponse de coucou747
Messages postés
3
Date d'inscription
vendredi 27 mai 2011
Dernière intervention
2 juin 2011
0
Merci
bonjour coucou747

je te comprend tres bien, mais ma question reste ceci: pourquoi tu varis (i = 1; i<ligne;i++), le tableau est indice a partir de zero.j ai pense,si i commence a 1 , la premiere case ne serais pas prise en consideration .
Commenter la réponse de papi1983
Messages postés
3
Date d'inscription
vendredi 27 mai 2011
Dernière intervention
2 juin 2011
0
Merci
bonjour a tout!

c est maintenant que je t es bien saisis, car je laissais i varie tjrs de 0 a ligne + 1. je ne remarquais pas en laissant commence par zero et en ecrivant <= ligne, j avais deja ligne +1 qui est superieur a nombre deligne.je recevais une exception sur cette ligne de programme.maintenant , j ai change et sa marche, mais sur la Diagonal comme je dois aligne 4 pions, i et j doivent etre inferieur respectiment a ligne - 4 et colone -4,merci beaucoup.a bientot
Commenter la réponse de papi1983
Messages postés
12336
Date d'inscription
mardi 10 février 2004
Dernière intervention
30 juillet 2012
0
Merci
si ca te convient, clique sur réponse acceptée stp
Commenter la réponse de coucou747

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.