Advertisement
Guest User

Untitled

a guest
Oct 24th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.32 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <math.h>
  3.  
  4. int main(void)
  5. {
  6.     double A[4][4] = {
  7.         { 3.8, 14.2, 6.3, -15.5 },
  8.         { 8.3, -6.6, 5.8, 12.2 },
  9.         { 6.4, -8.5, -4.3, 8.8 },
  10.         { 17.1, -8.3, 14.4, -7.2 } };
  11.  
  12.     double B[4] = { 2.8, -4.7, 7.7, 13.5 };
  13.  
  14.     double X[4];
  15.     double c;
  16.     int s, i, j;
  17.     int n = 4;
  18.  
  19.     double detA;
  20.  
  21.     for (s = 0; s < n - 1; s++)
  22.     {
  23.         for (i = s + 1; i < n; i++)
  24.         {
  25.             c = A[i][s] / A[s][s];
  26.             B[i] = B[i] - c * B[s];
  27.             for (j = s + 1; j < n; j++)
  28.             {
  29.                 A[i][j] = A[i][j] - c * A[s][j];
  30.  
  31.             }
  32.         }
  33.     }
  34.  
  35.     X[n - 1] = B[n - 1] / A[n - 1][n - 1];
  36.  
  37.     for (i = n - 2; i >= 0; i--)
  38.     {
  39.         c = B[i];
  40.         for (j = i + 1; j < n; j++)
  41.         {
  42.             c = c - A[i][j] * X[j];
  43.         }
  44.         X[i] = c / A[i][i];
  45.     }
  46.  
  47.     printf("A:\n");
  48.     for (i = 0; i < n; i++)
  49.     {
  50.         for (j = 0; j < n; j++)
  51.         {
  52.             printf("%f\t", A[i][j]);
  53.         }
  54.         printf("\n");
  55.     }
  56.  
  57.  
  58.     printf("X:\n");
  59.     for (i = 0; i < n; i++)
  60.     {
  61.         printf("%f\t", X[i]);
  62.     }
  63.     printf("\n");
  64.  
  65.     detA = 1;
  66.     for (i = 0; i < n; i++)
  67.     {
  68.         detA = detA * A[i][i];
  69.     }
  70.  
  71.     printf("det(A): %f\n", detA);
  72.  
  73.     return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement