Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

dimanche 26 avril 2020

Baccalauréat 2015 Sujet 11 Corrigé

Program S11; Var msg,cl : string; //********************************** Procedure saisi_msg(Var msg:String); Var i : integer; x : boolean; Begin Repeat x := false; write('Message à crypter : '); readln(msg); i := 1; While (msg[i] In ['A'..'Z' , ' ']) And (i<=length(msg)) Do i := i+1; If i>length(msg) Then x := true; Until x; End; Procedure saisi_cle(Var chcl:String;msg:String); Var i,l : integer; x : boolean; Begin Repeat x := false; Write('Clé de cryptage : '); readln(cl); i := 1; l := length(cl); While (cl[i] In ['0'..'9']) And (i<=l) Do i := i+1; If i>l Then x := true; Until x And (length(msg)=l) ; End; //********************************** Function Crypter(msg,cle:String) : string; Var i,j,k,e,c : integer; ch : string; Begin ch := ''; For k :=1 To length(msg) Do Begin If msg[k]=' ' Then ch := ch+' ' Else Begin val(cle[k],c,e); i := ord(msg[k])-64; j := c+i; If j>26 Then j := j Mod 26; ch := ch+chr(j+64); End ; End; Crypter := ch; End; //********************************** Begin Saisi_msg(msg); Saisi_cle(cl,msg); Writeln(Crypter(msg,cl)); End.
 
Back to top