LOVEGUN

Warming up (Exercice Matrice)

Apr 12th, 2021 (edited)
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.50 KB | None | 0 0
  1. {https://cdn.discordapp.com/attachments/440593885740269568/831236379735359504/image0.jpg}
  2. Program rev;
  3. Uses Wincrt;
  4. Type
  5.   mat = Array [1..21,1..21] Of Integer;
  6. Var
  7.   m: mat ;
  8.   n: Integer;
  9.  
  10. Procedure remplir (Var m:mat; Var n:Integer);
  11. Var
  12.   i,j,x: Integer;
  13. Begin
  14.   Repeat
  15.     Write ('Saisir N: ');
  16.     Readln (n);
  17.   Until (3<=n) And (n<=21);
  18.   x := n+1;
  19.   For i:=1 To n Do
  20.     Begin
  21.       x := x-1;
  22.       For j:=1 To n Do
  23.         If (i=j) Or (x=j) Then
  24.           Repeat
  25.             Write ('M[',i,',',j,']: ');
  26.             Readln (m[i,j]);
  27.           Until m[i,j]=0
  28.         Else
  29.           Begin
  30.             Write ('M[',i,',',j,']: ');
  31.             Readln (m[i,j]);
  32.           End;
  33.     End;
  34. End;
  35.  
  36. Function somme_l(m:mat;l,n:Integer): Integer;
  37. Var
  38. s,j:integer;
  39. Begin
  40.     s:=0;
  41.     for j:=1 to n Do
  42.         s:=s+m[l,j];
  43.     somme_l:=s;
  44. End;
  45.  
  46. Function somme_c(m:mat;c,n:Integer): Integer;
  47. Var
  48. s,i:integer;
  49. Begin
  50.     s:=0;
  51.     for i:=1 to n Do
  52.         s:=s+m[i,c];
  53.     somme_c:=s;
  54. End;
  55.  
  56. Procedure traitement (m:mat;n:Integer);
  57. Var
  58. sh,sb,sg,sd:integer;
  59. Begin
  60.   sh := somme_l(m,1,n);
  61.   sb := somme_l(m,n,n);
  62.   sg := somme_c(m,1,n);
  63.   sd := somme_c(m,n,n);
  64.     writeln (sh);
  65.     writeln (sb);
  66.     writeln (sg);
  67.     writeln (sd);
  68.   If (sh=sb) And (sb=sg) And (sg=sd) Then
  69.     Writeln ('La matrice est totalement equilb')
  70.   Else If (sh=sb) Then
  71.          Writeln ('La matrice est plus au moins equilibre')
  72.   Else Writeln ('La matrice n est pas equilibré');
  73. End;
  74. Begin
  75.   remplir (m,n);
  76.     traitement (m,n);
  77. End.
  78.  
Add Comment
Please, Sign In to add comment