L'index se trouve en dehors des limites du tableau (débutant)
cs_soft57
Messages postés3Date d'inscriptionlundi 31 octobre 2011StatutMembreDernière intervention13 janvier 2014
-
31 oct. 2011 à 12:51
Whismeril
Messages postés18599Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention20 septembre 2023
-
22 nov. 2011 à 19:18
Bonjour,
J'ai un TP à rendre, mais j'ai une erreur que je n'arrive vraiment pas à résoudre.
Voici l'énoncé :
Initialiser un tableau de 5 mots au moment de la déclaration. Permettre la saisie d’une suite de mots et afficher un message indiquant si le mot saisi se trouve ou non dans le tableau. La saisie de la suite de mots se termine avec le mot FIN.
La recherche du mot saisi dans le tableau doit se faire dans une fonction qui retourne le message à afficher. Utiliser la concaténation de chaines de caractères pour introduire le mot recherché dans le message à afficher.
Je lance le programme, mon texte s'affiche normalement, mais lorsque je réponds et appuie sur entrée, j'ai un problème "L'index se trouve en dehors des limites du tableau".
Voici mon code :
namespace LES_ATELIERS4
{
class tpa4
{
static void Main(string[] args)
{
string message;
string[] tbMots = new string[5] { "Pomme", "Poire", "Carotte", "Banane", "Tomate" };
string mots;
Console.WriteLine("Entrez un mot à rechercher ou FIN pour terminer : ");
mots = Console.ReadLine();
while (mots != "FIN")
{
message = motsValide(ref mots, tbMots);
Console.WriteLine(message);
}
}
static string motsValide(ref string mots, string[] tbMots)
{
int cpt = 0;
string messg;
bool trouver = false;
while (cpt <5 || trouver == false)
{
if (mots == tbMots[cpt])
{
trouver = true;
}
else
{
trouver = false;
}
cpt ++;
}
if (trouver == true)
messg = " Le mot '" + mots + "' existe dans le tableau.";
else
messg = " Le mot '" + mots + "' n'existe pas dans le tableau.";
return (messg);
}
}
}
Si vous avez une solution je suis prenante ! Merci
A voir également:
L'index se trouve en dehors des limites du tableau.
Tableau limites - Meilleures réponses
L'index était hors limites. il ne doit pas être négatif - Meilleures réponses
Whismeril
Messages postés18599Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention20 septembre 2023629 22 nov. 2011 à 19:18
Bonsoir, je ne pense pas non plus que le sujet soit encore d'actualité,mais effectivement je l'était trompé. D'un autre côté je lui avais proposé Contains qui me semble répond au besoin
cs_soft57
Messages postés3Date d'inscriptionlundi 31 octobre 2011StatutMembreDernière intervention13 janvier 2014 31 oct. 2011 à 13:50
Déjà merci pour la réponse.
J'avais déjà essayer avec un for mais ma prof a dit que pour ce cas ce n'était pas approprié ...
Et que mon problème serait que je ne sort pas de la boucle while, et qu'il faut que je fasse varier "mots". Mais cela ne m'as pas plus avancé.
Pour le reste en ce qui concerne l'énoncé et l'initialisation du tableau je changerai une fois que j'aurai réussi à résoudre le problème de l'index au :