Home Exercices Exercices et problèmes de révisions Occurences des voyelles dans une chaîne de caractère
Bookmark and Share

Liens sponsorisés

Login Form



Occurences des voyelles dans une chaîne de caractère Print E-mail
Written by Administrator   
   
Enoncé de l'exercie
Ecrire un programme intitulé OCCURENCE qui permet de saisir une chaîne de caractères CH puis d'afficher les occurences des voyelles qui figurent dans CH.
Exemple :
Si CH='LYCEE 25 juillet'
Le programme OCCURENCE affichera les résultats suivants :
L'occurence de 'E' est 3
L'occurence de 'I' est 1
L'occurence de 'U' est 1
L'occurence de 'Y' est 1

NB: La solution doit comporter au moins deux sous programmes.

Solution en Pascal
{ pour resoudre ce problème on va:
- utiliser un tableau t d'entiers et d'indice les caractères majuscules
- la fonction Upcase qui permet de convertir une lettre en majuscule
- la procedure init qui permet d'intialiser les élément de t a zéro
- la procedure remplir qui remplit t par les occurences de chaque voyelle de ch
- et enfin la procedure afficher qui affiche les occurences de chaque voyelle de ch}
program occurence;
uses wincrt;
type tab=array['A'..'Y'] of integer;
var t:tab;
ch:string;

{ initialiser tous les éléments de t à zéro }

procedure init(var T:tab);
var c:char;
begin
for c:='A' to 'Y' do
t[c]:=0;
end;

{ remplir les cases d'indice voyelle par leurs occurences dans ch }

procedure remplir(var t:tab;ch:string);
var i:integer;
begin
for i:=1 to length(ch) do
if(upcase(ch[i]) in ['A','E','I','O','U','Y'])then
T[upcase(ch[i])]:=T[upcase(ch[i])]+1;
end;

{ afiicher le contenu de t avec son indice }

procedure afficher(t:tab);
var c:char;
begin
for c:='A' to 'Y' do
if(T[c]>0)then
writeln('L''occurences de ''',c,'''est ',T[c]);
end;

{ ** programme principal ** }

begin
read(ch);
init(t);
remplir(t,ch);
afficher(t);
end.
 

 

Liens sponsorisés