Drop Down MenusCSS Drop Down MenuPure CSS Dropdown Menu

samedi 25 avril 2020

Baccalauréat 2012 SI Sujet 2 Corrigé

Program S2; uses crt; Type fdat = file Of integer; Var f : fdat; p,q : integer; //**************************************** Function premier(n:integer) : boolean; Var nbd,i : integer; Begin nbd := 0; For i:=1 To n Do If (n Mod i=0) Then nbd := nbd+1; premier := (nbd=2); End; //**************************************** Function permut_cir(ch:String) : integer; Var i,n,e : integer; c : char; Begin c := ch[length(ch)]; For i:=length(ch) Downto 2 Do ch[i] := ch[i-1]; ch[1] := c; val(ch,n,e); permut_cir := n; End; //**************************************** Function circulaire(n:integer) : boolean; Var ok : boolean; p : integer; ch : string; Begin str(n,ch); ok := true; Repeat p := permut_cir(ch); If (premier(p)=false) Then ok := false Else str(p,ch); Until (ok=false) Or(p=n); circulaire := ok; End; //**************************************** Procedure nb_premier_cir(Var f:fdat; p,q:integer); Var i : integer; Begin rewrite(f); For i:=p To q Do If (premier(i)) Then If (circulaire(i)) Then write(f,i); End; //**************************************** Procedure affiche(Var f:fdat); Var ch : string; n : integer; Begin reset(f); While (Not(eof(f))) Do Begin read(f,n); writeln('---->',n); readln; End; End; //**************************************** Begin assign(f,'cicul.dat'); Repeat write('saisir p: '); readln(p); write('saisir q: '); readln(q); Until (p>10) And(p<q) And (q<20000); nb_premier_cir(f,p,q); clrscr; writeln('--------------------------------------------------------'); writeln; writeln('------------ Le contenu du fichier Circ.dat ---------'); writeln; writeln('--------------------------------------------------------'); affiche(f); End.
 
Back to top