Advertisement
Guest User

Untitled

a guest
Oct 19th, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.17 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<windows.h>
  3.  
  4. void revMatrix(float[][10],int,float[][10]);
  5. void proverka(float[][10],int,float*,float*);
  6.  
  7. int main() {
  8. SetConsoleCP(1251);
  9. SetConsoleOutputCP(1251);
  10.  
  11. float A[10][10], x[10], b[10], d[10][10], a=1, T[10][10],k;
  12. int i, j, n, m, p,l;
  13.  
  14. printf("n = ");
  15. scanf("%d",&n);
  16. printf("Ìàññèâ A:\n");
  17.  
  18. for (i = 0; i < n ; i++)
  19. for (j = 0 ; j < n ; j++)
  20. scanf("%f", &A[i][j]);
  21.  
  22. printf("Âåêòîð b:\n");
  23. for ( i = 0 ; i < n ; i++)
  24. scanf("%f", &b[i]);
  25.  
  26. for (l = 0 ; l < n - 1 ; k++)
  27. for (i = l + 1 ; i < n ;i++) {
  28. d[i][l] = A[i][l] / A[l][l];
  29. for ( j = 0 ; j < n ; j++)
  30. A[i][j] = A[i][j] - d[i][l] * A[l][j];
  31. b[i] = b[i] - d[i][l] * b[l];
  32. }
  33.  
  34. printf(" A = \n");
  35. for ( i = 0 ; i < n ; i++) {
  36. for ( j = 0 ; j < n ; j++)
  37. printf("%10f",A[i][j]);
  38. printf("\n");
  39. }
  40.  
  41. printf(" b = \n");
  42. for ( i = 0 ; i < n ; i++)
  43. printf("%f\n",b[i]);
  44. x[n-1] = b[n-1] / A[n-1][n-1];
  45.  
  46. for ( i = n - 2 ; i >= 0 ; i--) {
  47. k = 0;
  48. for ( j = i + 1 ; j < n ; j++)
  49. k += A[i][j] * x[j];
  50. x[i] = (b[i] - k) / A[i][i]; //ðåøåíèå ñèñòåìû
  51. }
  52.  
  53. printf(" x = \n");
  54. for ( i = 0 ; i < n ; i++)
  55. printf("%f\n",x[i]);
  56. puts("proverka");
  57. // proverka(A,n,x);
  58. for ( i = 0 ; i < n; i++) //íàõîæäåíèå îïðåäåëèòåëÿ
  59. a *= A[i][i];
  60.  
  61.  
  62. printf( " a = %f\n",a);
  63. for ( m = 0 ; m < n ; m++) {
  64. for ( p = 0 ; p < n ; p++) { //îáðàòíàÿ ìàòðèöà
  65. if( p == m )
  66. b[p] = 1;
  67. else
  68. b[p] = 0;
  69. }
  70. for ( l = 0 ; l < n-1 ; k++)
  71. for ( i = l+1 ; i < n ;i++) {
  72. b[i] = b[i] - d[i][l] * b[l];
  73. }
  74.  
  75. T[n-1][m] = b[n-1] / A[n-1][n-1];
  76. for ( i = n-2; i >= 0; i--) {
  77. k = 0;
  78. for ( j = i+1 ; j < n ; j++)
  79. k += A[i][j] * T[j][m];
  80. T[i][m] = (b[i]-k) / A[i][i];
  81. }
  82. }
  83. printf("\nproverka\n");
  84. revMatrix(A,n,T);
  85. printf("Îáðàòíàÿ ìàòðèöà:\n");
  86. for ( i = 0 ; i < n ; i++) {
  87. for ( j = 0 ; j < n ; j++)
  88. printf("%10f",T[i][j]);
  89. printf("\n");
  90. }
  91.  
  92. return 0;
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement