Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

dimanche 26 avril 2020

Baccalauréat 2014 Sujet 7 Corrigé

Program S7; Type Tab = Array[1..40] Of integer; Var T,V : Tab; NT,NV : integer; //************************************** Procedure Saisie (Var N:integer); Begin Repeat write('Taille du tableau [5..40]: '); readln(N); Until (N In [5..40]); End; //************************************** Procedure Remplissage(Var T:Tab;N:integer); Var i : integer; Begin For i:=1 To N Do Begin Repeat write('T[',i,'] = '); readln(T[i]); Until (T[i] > 0); End; End; //************************************** Function Suite(n:integer) : integer; Var i,U : integer; Begin U := 1; For i:=1 To n Do U := 3*U-1; Suite := U; End; //************************************** Function Appartient(x:integer) : boolean; Var i : integer; Begin i := -1; Repeat i := i+1; Until (Suite(i) >= x); Appartient := (Suite(i) = x); End; //************************************** Procedure Transfert(T:Tab;Var V:Tab;NT:integer;Var NV:integer); Var i : integer; Begin NV := 0; For i:=1 To NT Do Begin If (Appartient(T[i])) Then Begin NV := NV+1; V[NV] := T[i]; End; End; End; //************************************** Procedure Affichage(V:Tab;NV:integer); Var i : integer; Begin If (NV=0) Then writeln('Aucun élément de T ne correspond à un terme de la suite U') Else Begin write(V[1],'|'); For i:=2 To NV Do Begin If (V[i] <>V[i-1]) Then write(V[i],'|'); End; End; End; //************************************** Procedure Trier(Var T:Tab;N:integer); Var i,aux : integer; permut : boolean; Begin Repeat Permut := False; For i:=1 To (N-1) Do Begin If (T[i]>T[i+1]) Then Begin Aux := T[i]; T[i] := T[i+1]; T[i+1] := Aux; End; End; Until (Permut = False); End; //************************************** Begin Saisie(NT); Remplissage(T,NT); Transfert(T,V,NT,NV); Trier(V,NV); Affichage(V,NV); End.
 
Back to top