Advertisement
Guest User

Untitled

a guest
Apr 26th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.43 KB | None | 0 0
  1. Program dali;
  2. uses wincrt;
  3. type
  4. tab = array [0..100] of integer;
  5. var
  6. n,i : integer;
  7. u : tab;
  8.  
  9. Function puissance(a,b : integer) : integer;
  10.     Var
  11.         i : integer;
  12.         p : integer;
  13. Begin
  14.     p := 1 ;
  15.     for i := 1 to b Do
  16.         p := P *a;
  17.  
  18.     puissance := p;
  19. end;
  20.  
  21. function PGCD (a,b : integer) : integer;
  22. Var
  23.     r : integer;
  24. Begin
  25.     while ( b>0 ) Do
  26.         Begin
  27.                 r := a mod b;
  28.                 a := b;
  29.                 b := r;
  30.         end;
  31.     PGCD  := a ;
  32. end;
  33.  
  34. function PPCM( a,b : integer): integer;
  35. Var
  36.     n,m : integer;
  37. Begin
  38.     n:=a;
  39.     m :=b;
  40.     while(n<> m) Do
  41.         Begin
  42.             if ( n<m) then
  43.             n := n +a
  44.             Else
  45.             m := m +b;
  46.         end;
  47.     PPCM := n;
  48. end;
  49.  
  50. Procedure Suite( var U : tab; n : integer);
  51.     var
  52.         i : Integer;
  53.     Begin
  54.         U[0] := 1;
  55.         for i := 1 to n Do
  56.                     Begin
  57.                                     {   writeln('ppcm (', U[i-1], ',' , i , '): ' ,PPCM(U[i-1],i) );
  58.                                         writeln('pgcd (', U[i-1], ',' , i , '): ' , PGCD(i,U[i-1]));      }
  59.                 U[i] :=  ( ( PPCM(U[i-1],i) div 4 ) + PGCD(i,U[i-1])*i );
  60.                 end;
  61.     end;
  62.  
  63.     Begin
  64.  
  65.                 repeat
  66.                     writeln(' NBRE DE TEERMES : ');
  67.                     read(n);
  68.                 until n in [3..15];
  69.                                 writeln;
  70.                 suite(u,n);
  71.                 for i := 0 to n Do
  72.                     write(U[i], ' , ');
  73.     end.
  74.  
  75.     {                          La suite de lob est defnie comme suit :
  76.     U0 = 1
  77.     Un = ((PPCM(n-1,i) div 4) + PGCD(n-1,i) ) * n )
  78.  
  79. Ecrire un programme pascal qui permet de saisir le nombre de
  80. termes n (  5<= n <= 15) de la suite U
  81. et afficher les n premiers termers de U }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement