Console.WriteLine("Enter any string");
string str1, result="", str = Console.ReadLine();
char [] array= str.ToCharArray();
int i=0;
for (i = 0; i < str.Length;i++)
{
if ((i != (str.Length - 1)))
{ if (array[i] == array[i + 1])
{
str1 = str.Trim(array[i]);
}
else
{
result += array[i];
}
}
else
{
result += array[i];
}
}
Console.WriteLine(result);
Dans ce code le programme;
- lira la chaîne comme entrée d'un utilisateur
2.Convert la chaîne en tableau de caractères en utilisant string.ToChar()
La boucle sera exécutée pour chaque caractère dans la chaîne
chaque caractère stocké dans cette position particulière dans le tableau sera comparé au caractère stor ed en position un plus grand que cela. Et si les personnages se trouvent même le caractère stocké dans ce tableau particulier serait coupé à l'aide .ToTrim()
Pour le dernier caractère de la boucle montrera erreur de l'indice hors limite que ce serait la dernière valeur de position du tableau. Voilà pourquoi je * if ((i = (str.Length - 1))) *
6.Les caractères à gauche après la coupe sont stockés dans le résultat sous forme concaténée.
Qu'en est-il des situations où les mots ont normalement des occurrences consécutives de la même lettre? Par exemple: abeille, bière, betterave, réunion, lune, bientôt ... –
Alors ces mots deviendraient be, ber, bet, meting, mon et fils. – mquander
@mquander - Je le sais. J'espérais inciter l'OP à réfléchir un peu plus à une action similaire. –