Par pitié, ton code est illisible sans coloration syntaxique, utilises le bouton .
Et c'est moi ou tu as copier deux fois le même code ? Je ne comprend pas les mecs qui ne relisent pas leur post une fois qu'il est posté (surtout quand c'est leur sujet), c'est navrant
EDIT : Bon j'ai relus tant bien que mal ton code farfelu, et c'est normale que ça plante, tu initialises un tableau de taille 0 (tabPioche) et tu va ensuite muter l'index 9 de ton tableau dans ton premier tour de boucle (juste avant que ça plante)
- Edité par LeSuricateFurtif 29 octobre 2014 à 22:11:41
EDIT : Bon j'ai relus tant bien que mal ton code farfelu, et c'est normale que ça plante, tu initialises un tableau de taille 0 (tabPioche) et tu va ensuite muter l'index 9 de ton tableau dans ton premier tour de boucle (juste avant que ça plante)
Bien joué (+1) :
nbJeton = 0; // <==== a zero.
//Instanciation des tableaux
tabFois = new int [] { 9,2,2,3,15,2,2,2,8,1,1,5,3,6,6,2,1,6,6,6,6,2,1,1,1,1 };
tabPioche = new char [nbJeton]; // <==== construire un tableau sans possibilite d'entrer des valeurs.
tabChevaletUn = new char [PIOCHE/2];
tabChevaletDeux = new char [PIOCHE/2];
// Ajout des lettres dans la pioche.
alphabet= 65 ;
cpt = 0 ;
while (alphabet >= 65 && alphabet <= 90 )
{
nbFois = tabFois [ (int) alphabet - 65 ]+cpt;
while (cpt < nbFois)
{
nbJeton = nbJeton +1;
tabPioche[cpt] = alphabet; // <= ne peut pas entrer de valeur le tableau est initialise a une taille de zero.
cpt++;
}
alphabet++;
}
Utiliser une liste à la place (List<char> et la méthode add).
Merci de vos réponses et excusez moi pour la mise en page effectivement ^^'
Mais sinon je ne comprend pas, pourquoi je ne peux entrer de valeur dans le tableau ?? Ma constante PIOCHE est égale à 100 donc le tableau ne fait pas 0 cases si ?
Au debut j'avais noté ceci :
nbJeton = 0; // <==== a zero.
//Instanciation des tableaux
tabFois = new int [] { 9,2,2,3,15,2,2,2,8,1,1,5,3,6,6,2,1,6,6,6,6,2,1,1,1,1 };
tabPioche = new char [nbJeton]; // <==== construire un tableau sans possibilite d'entrer des valeurs.
tabChevaletUn = new char [nbJeton/2];
tabChevaletDeux = new char [nbJeton/2];
// Ajout des lettres dans la pioche.
alphabet= 65 ;
cpt = 0 ;
while (alphabet >= 65 && alphabet <= 90 )
{
nbFois = tabFois [ (int) alphabet - 65 ]+cpt;
while (cpt < nbFois)
{
nbJeton = nbJeton +1;
tabPioche[cpt] = alphabet; //
cpt++;
}
alphabet++;
}
Je pensais instancier un tableau de 0, puis lorsque nbJeton reçois plus 1 le tableau pioche augmente aussi. Mais sa ne fonctionne pas nan plus ..
Sinon j'ai la même erreur à la ligne 76. Désolé je débute je n'avais jamais utilisé les tableau avant
Sinon, vous devez recréer à chaque fois un tableau et vous allez perdre les anciennes valeurs et surcharger la mémoire vive (si vous devez agrandir à chaque fois le tableau).
Ha ouiiii.... je fait vraiment pas attention ^^'. Merci
J'ai mis la ligne qui enlève 1 jeton avant celle qui attribut a tabPioche[ ind] le nombre contenue dans la case tabPioche [nbJeton] et Hop plus d'erreur x)
J'ai vérifié, il y a le bon nombre de lettre et de case dans chaque chevalet donc c'est parfait
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Essayer avec ceci .