fork download
  1. #include <iostream>
  2. using namespace std;
  3. int n, i, j, k;
  4. double d, s;
  5.  
  6. int main() {
  7.  
  8. cin >> n; //порядок
  9.  
  10. double **a = new double *[n];
  11.  
  12. for (i = 0; i <= n; i++)
  13. a[i] = new double [n];
  14.  
  15. double **a1 = new double *[n];
  16.  
  17. for (i = 0; i <= n; i++)
  18. a1[i] = new double [n];
  19.  
  20. double *b = new double [n];
  21.  
  22. double *x = new double [n];
  23.  
  24.  
  25. //ввод коэф. и свободных членов
  26. for (i = 1; i <= n; i++) {
  27.  
  28. for (j = 1; j <= n; j++) {
  29.  
  30. cin >> a[i][j];
  31. a1[i][j] = a[i][j];
  32. }
  33.  
  34. cin >> b[i];
  35. }
  36.  
  37.  
  38. for (k = 1; k <= n; k++) {
  39.  
  40. for (j = k + 1; j <= n; j++) {
  41. d = a[j][k] / a[k][k];
  42.  
  43. for (i = k; i <= n; i++) {
  44. a[j][i] = a[j][i] - d * a[k][i];
  45. }
  46.  
  47. b[j] = b[j] - d * b[k];
  48. }
  49. }
  50.  
  51. for (k = n; k >= 1; k--) {
  52. d = 0;
  53.  
  54. for (j = k + 1; j <= n; j++) {
  55. s = a[k][j] * x[j];
  56. d = d + s;
  57. }
  58. x[k] = (b[k] - d) / a[k][k];
  59. }
  60.  
  61.  
  62. cout << "Корни системы: " << endl;
  63.  
  64. for(i = 1; i <= n; i++)
  65.  
  66. cout << "x[" << i << "] = " << x[i] << endl;
  67.  
  68. return 0;
  69.  
  70. }
Success #stdin #stdout 0s 4468KB
stdin
3
8
5
4
6
1
9
5
5
9
0
2
10
stdout
Корни системы: 
x[1] = -1.48571
x[2] = -5.77143
x[3] = 11.6857