Program S11;
Type
Tab = Array[1..20] Of String;
Var
T : tab;
N : integer;
V : char;
//***********************************
Procedure Saisie_N(Var N:integer);
Begin
Repeat
Write('Entrer la taille du tableau : ');
Readln(n);
Until n In [1..20];
End;
//***********************************
Procedure Remplissage(Var T:tab; N:integer);
Var
i,j : integer;
Begin
For i:=1 To n Do
Repeat
Write('Donner une chaine de caractère : ');
Readln(T[i]);
j := 0;
Repeat
j := j+1;
Until (UpCase(T[i][j]) In ['A'..'Z']) Or (j=Length(T[i]));
Until (UpCase(T[i][j]) In ['A'..'Z']) And (Length(T[i]) In [3..15]);
End;
//***********************************
Procedure Saisir_V(Var V:char);
Begin
Repeat
Write('Entrer une voyelle : ');
Readln(V);
Until UpCase(V) In ['A','E','I','O','U','Y'];
End;
//***********************************
Function mono_vocalisme(V:char; ch:String) : boolean;
Var
i : integer;
B : boolean;
Begin
i := 0;
B := false;
Repeat
i := i+1;
If (UpCase(ch[i]) In ['A','E','I','O','U','Y']) Then
B := UpCase(ch[i]) = UpCase(V);
Until (i=length(ch));
mono_vocalisme := B;
End;
//***********************************
Procedure Afficher(N:integer; T:tab; V:char );
Var
i : integer;
Begin
Writeln('Les mots mono-vocalismes en "a" sont : ');
For i:=1 To n Do
If mono_vocalisme(V,T[i]) Then
Writeln(T[i]);
End;
//***********************************
Begin
Saisie_N(N);
Remplissage(T,N);
Saisir_V(V);
Afficher(N,T,V);
End.
Inscription à :
Publier les commentaires (Atom)