Programme C#

Signaler
Messages postés
40
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
11 avril 2006
-
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
-
slt tt le monde, voici mon programme j'ai une erreur est ce ke kelkun pourrai m'aidé à le résoudre svp !!
merci


static
void Main(
string[] args)


{
const
int max=7;

string[] FRAN;
FRAN =
new
string[max]{"le","noir","blanc","chien","chat","est","et"};

string[] ANG;
ANG =
new
string[max]{"the", "black","white","dog","cat","is","and"};

string mot, s1;

int i ;

char rep,rep1;


Console.WriteLine("Y-a-t-il un mot à traduire ?(o/n)");

string s = Console.ReadLine();
rep =
char.Parse(s);

while(rep!='o' && rep!='n')
{Console.WriteLine(" Vous devez taper n pour non ou o pour oui !");
s = Console.ReadLine();
rep =
char.Parse(s);
}

while (rep == 'o')

do
{Console.WriteLine("Entrer un mot");
mot = Console.ReadLine();
mot = mot.ToLower();
i = 1;

while (i<max && FRAN[i]!= mot)
{i = i+1;

if (i>max)
Console.WriteLine(" le mot entrer est inconnu ");

else Console.WriteLine(" L'équivalent en Anglais est " +ANG[i]);
}
Console.WriteLine("Y-a-t-il un autre mot ?");
s1 = Console.ReadLine();
rep1 =
char.Parse(s1);

while(rep1!='o' && rep1!='n')
{Console.WriteLine("il y a une erreur !");
s = Console.ReadLine();
rep1 =
char.Parse(s);
}


}
while (rep1 =='n');




}


}


}

6 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
93
Salut,

Quelle erreur ? (type d'exception, message etc)

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Une erreur deja, c'est que ton i est initialisé a 1, alors qu'un tableau commence a 0, ce qui pose probleme

Ensuite, remplace donc par ce bout de code:



i = 0;

while (i<max)

{

if (FRAN[i]!= mot)

i = i+1;

else

{



Console.WriteLine(" L'équivalent en Anglais est " +ANG[i]);

break;

}

}



Au fait, tu peux remplacer ta constante max par ANG.Length, qui est le nombre de valeurs dans ton tableau.


Mx
Messages postés
40
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
11 avril 2006

il sert à koi le break ??
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
93
A sortir de la boucle while sans que la condition soit vérifiée.

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
40
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
11 avril 2006

si je retire le break je devré faire mettre quoi ?

sam
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Bah si tu veux pas du break, tu peux faire comme ca



while (i<max)

{

if (FRAN[i] == mot)



Console.WriteLine(" L'équivalent en Anglais est " +ANG[i]);

i = i+1;

}



la boucle continuera de tourner jusqu'a que i = max, meme si le mot a été trouvé.

Mx