Program S4;
Type
tab = array[1..10] Of string;
Var
t : tab;
n,i : integer;
//***********************************
Function verif(ch:String) : boolean;
Var
i : integer;
b : boolean;
Begin
i := 0;
Repeat
i := i+1;
b := ch[i] In ['A'..'Z'];
Until Not b Or (i=length(ch));
verif := b And (length(ch) In [2..12]);
End;
//***********************************
Procedure saisie(Var n:integer;Var t:tab);
Var
i : integer;
Begin
Repeat
writeln('n=');
readln(n);
Until (n In [5..10]) ;
For i:=1 To n Do
Repeat
writeln('T[',i,']=');
readln(t[i]);
Until (verif(T[i])) ;
End;
//***********************************
Function zigzag(ch:String) : boolean ;
Var
k : integer;
verif : boolean;
Begin
k := 1;
Repeat
k := k+1;
verif := ((ord(ch[k-1])<ord(ch[k]))And(ord(ch[k])>ord(ch[k+1]))) Or
((ord(ch[k-1])>ord(ch[k]))And(ord(ch[k])<ord(ch[k+1])));
Until Not verif Or (k=length(ch)-1);
zigzag := verif ;
End;
//***********************************
Begin
saisie(n,t);
For i:=1 To n Do
If zigzag(t[i]) Then
writeln(t[i]);
End.
Inscription à :
Publier les commentaires (Atom)