Advertisement
LOVEGUN

Exercice Naarech Kadech Serie Yahya

Jun 4th, 2021
384
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.50 KB | None | 0 0
  1. Program exercice;
  2. Uses Wincrt;
  3. Var
  4.   a,b: Integer;
  5.   f: Text;
  6.  
  7. Procedure saisie (Var a,b:Integer);
  8. Begin
  9.   Repeat
  10.     Write ('Saisir A: ');
  11.     Readln (a);
  12.     Writeln ('Saisir B: ');
  13.     Readln (b);
  14.   Until (2<=a) And (a<=b) And (b<=100);
  15. End;
  16. Function puis (n,e:LongInt): LongInt;
  17. Var
  18.   s,i: LongInt;
  19. Begin
  20.   s := 1;
  21.   For i:=1 To e Do
  22.     s := s*n;
  23.   puis := s;
  24. End;
  25.  
  26. Function premier (n:Integer): Boolean;
  27. Var
  28.   r,i: Integer;
  29. Begin
  30.   r := 0;
  31.   For i:=1 To n Do
  32.     If (n Mod i=0) Then
  33.       r := r+1;
  34.   premier := r=2;
  35. End;
  36.  
  37. Function pgcd (a,b:Integer): Integer;
  38. Var
  39.   r: Integer;
  40. Begin
  41.   Repeat
  42.     r := a Mod b;
  43.     a := b;
  44.     b := r;
  45.   Until (b=0);
  46.   pgcd := a;
  47. End;
  48.  
  49. Procedure traitement (var f:text;a,b:Integer);
  50. Var
  51.   u,v,i,n: Integer;
  52. Begin
  53.  
  54.   Assign (f,'c:\bac\ahlaaaa.txt');
  55.   Rewrite (f);
  56.   For i:=a To b Do
  57.     Begin
  58.       n := 0;
  59.             u := i;
  60.         v := i;
  61.       Repeat
  62.         n := n+1;
  63.         If (i Mod 2<>0) Then
  64.           Begin
  65.             u:=(puis(2,n)-1)+u;
  66.           End
  67.         Else  if (i Mod 2=0) Then
  68.           v := v+pgcd(3*n,v);
  69.       Until ((i Mod 2<>0) And premier(u)) Or ((i Mod 2=0) And premier(v)) Or (n=20);
  70.       If ((i Mod 2<>0) And premier(u)) Then
  71.         Writeln ('x= ',i,' u= ',u,' i= ',n)
  72.       Else If ((i Mod 2=0) And premier(v)) Then
  73.         Writeln ('x= ',i,' v= ',v,' i= ',n);
  74.     End;
  75.   Close (f);
  76. End;
  77. Begin
  78.     writeln (puis(2,15));
  79.   saisie (a,b);
  80.     Assign (f,'c:\bac\ahlaaaa.txt');
  81.   traitement (f,a,b);
  82. End.
  83.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement