c#: Correction des exercices tableaux et matrices 12
c#: Correction des exercices tableaux et matrices 12
- Enoncé Exercice 12
- Buts:
- Cet exercice a pour but de vérifier les points techniques suivants :
- Déclaration et initialisation de tableaux en c#.
- Affichage des éléments du tableau
- Parcourir des tableaux en c#.
- Comparer deux tables.
- Rappel
- Un palindrome est un mot ou une phrase que l’on peut lire dans les deux sens (de droite à gauche ou de gauche à droite).
- Un palindrome est un mot qui se dit d’un mot, d’un vers, d’une phrase que l’on peut lire indifféremment de gauche à droite ou de droite à gauche. (Exemple : le mot ressasser ou la phrase Ésope reste ici et se repose.)
- Le principe du palindrome est très simple. Ce sont des lettres qui, peu importe qu’elles soient lues de gauche à droite ou de droite à gauche, donnent le même mot ou même groupe de mots. Ainsi la ville « Laval » peut se lire dans les deux sens, de même que l’expression « Elu par cette crapule ». Bien entendu, on admet que les accents et les espaces n’entrent pas en compte dans ce décompte particulier.
- Explications
- Dans cet exercice on va maître l’accent sur l’utilisation des tableaux et non pas sur les chaines ce caractères
- Correction Exercice 12
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
static char[] mots ;
static string texte ;
static string texte_origine ;
static void Main(string[] args)
{
initialisationTableau();
affichageTableau();
if (testPalindrome(texte) == true)
{
System.Console.WriteLine("La chaîne: {0} est un palindrome.", texte_origine);
}
else
{
System.Console.WriteLine("La chaîne: {0} n'est pas un palindrome.", texte_origine);
}
}
public static void affichageTableau()
{
for (int i = 0; i < mots.Length; i++)
System.Console.WriteLine(mots[i]);
}
public static void initialisationTableau()
{
System.Console.WriteLine("Entrez une ligne de texte (max.100 caractères)");
texte_origine=System.Console.ReadLine();
texte = texte_origine.ToLower();
texte = texte.Replace(" ", "");
mots = texte.ToCharArray();
}
public static Boolean testPalindrome(string texte)
{
Boolean resultat = true;
char []test_mots = texte.ToCharArray();
for (int i = 0;i< mots.Length;i++)
{
if (mots[i]!=test_mots[test_mots.Length-i-1])
{
resultat = false;
break;
}
}
return (resultat);
}
}
}
