Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

mercredi 22 avril 2020

Baccalauréat 2017 Sujet 14 Corrigé

Program S14; Type Tab = array[1..10] Of string; Var n,i : integer; Pub, code : Tab; //******************************** Function verif(ch:String) : boolean; Var b : boolean; x,y,e : integer; Begin If length(ch)<>14 Then verif := false Else Begin b := (pos('ISSN ',ch)=1) And (pos('-',ch)=10); val(copy(ch,6,4),x,e); If ch[14]='X' Then val(copy(ch,11,3),y,e) Else val(copy(ch,11,4),y,e); verif := b And (x>0)And(y>0); End; End; //******************************** Procedure Remplir(Var Pub, code:Tab; n:integer); Var i : integer; Begin For i:=1 To n Do Begin write('Pub[',i,']='); readln(Pub[i]); Repeat write('Code[',i,']='); readln(Code[i]); Until verif(Code[i]); End; End; //******************************** Function authentique(ch:String) : boolean; Var a : longint; e,n,r : integer; Begin val(copy(ch,6,4)+copy(ch,11,3),a,e); val(ch[14],n,e); If ch[14]='X' Then n := 10; r := a Mod 11; authentique := r=n; End; //******************************** Begin Repeat write('Saisir le nombre de publications à vérifier :'); readln(n); Until n In [1..10]; remplir(Pub, code, N); For i:=1 To n Do If ( authentique (Code[i])) Then writeln (Pub[i]); End.
 
Back to top