Le code s'épuise jusqu'à ce que l'instruction IF dans la seconde boucle. J'ai essayé de changer beaucoup de choses - a ajouté un deuxième tableau afin qu'il ne soit pas en conflit avec la déclaration IF. Le débogué et a également changé les véritables déclarations du dernier si, mais elle ne passe jamais vraiment à travers la ligne 23 et indique System.indexoutofRangeException: l'index était en dehors des limites de la matrice. Strong>
3 Réponses :
Je pense que c'est parce que vous avez utilisé modifier votre code sur p> inc2 code> dans la condition de boucle pour, mais jamais vraiment attribué aucune valeur à celle-ci
L'erreur dit que vous essayez d'obtenir l'index qui n'est pas existé dans la matrice. Donc, ajouter des conditions de chèque:
Disons que Numinput = 5.
Vous créerez un tableau avec 5 éléments. Le 5ème élément comporte l'indice de 4 car l'index commence à compter à 0. p>
dans la seconde boucle, vous déclarez Dec = Numinput; Par conséquent, Dec est maintenant aussi 5. P>
dans votre instruction IF Vous demandez ArrayofnumberscLone [DEC]. Depuis Dec, vous demandez l'élément sur le 5ème indice. C'est le 6ème article qui n'existe pas. Par conséquent, vous obtenez la "System.indexOtofRangeExceptionXception" P>
Modification de votre deuxième boucle à la boucle ci-dessous doit résoudre vos problèmes P>
for (int inc = 0, dec = numInput - 1; inc < dec; inc++, dec--)
Vous savez, dans votre deuxième boucle, vous initialisez "INC", mais testez et augmentez "INC2" et dans le "Si", vous utilisez le "INC" jamais modifié?
Vous devez initialiser
déc = numinput - 1 code>