Program S11;
Type
Tab = array[1..15] Of integer;
Var
n : integer;
T : Tab;
//********************************
Procedure Saisie(Var n:integer);
Begin
Repeat
write('n=');
readln(n);
Until n In [3..15];
End;
//********************************
Procedure Remplir(Var T:Tab; n:integer);
Var
i : integer;
Begin
For i:=1 To n Do
Repeat
write('T[',i,']=');
readln(T[i]);
Until T[i]<>0;
End;
//********************************
Procedure affiche(T:Tab;n:integer);
Var
i,nb,k,S,j : integer;
ch,x : string;
A : array[1..20] Of string[100];
Begin
i := 1;
nb := 0;
Repeat
S := 0;
j:=i;
ch:='';
for j:=i to n do
begin
S := S+T[j];
str(T[j],x);
ch := ch+x+',';
If S=0 Then
Begin
x:=ch;
delete(x,length(x),1);
nb := nb+1;
A[nb] := x;
End;
end;
i:=i+1;
Until i>n;
writeln('Le nombre de séquences nulles de ce tableau est ',nb,' qui sont :');
If nb>0 Then
For k:=1 To nb Do
writeln(A[k],' ');
End;
//********************************
Begin
saisie(n);
remplir(T,n);
affiche(T,n);
End.
Inscription à :
Publier les commentaires (Atom)