а11 х1+а1n xn=b1
. . . . .
аn1 x1+ ann xn=b n
Квадратная матрица [aij] ij=1,..,n и вектор b1,..,bn-исходные данные задачи (предпологается, что система совместна и имеет единственное решение) Применить программу для решения следующих систем:
а) 10 x1+x2+x3=12
2 x1+10 x2 +x3=13
2 x1+2 x2 +10 x3=14
б) 4 x1+0.24 x2-0.08 x3=8
0.09 x1+3 x2-0.15 x3=9
0.04 x1-0.08 x2+4 x3=20
в) 6 x1-x2-x3=11.33
-x1+6 x2-x3=32
-x1-x2+6x3=42
г) 3 x1-x2=5
-2 x1+ x2-x3=0
2 x1-x2+4 x3=15
д) 0.427 x1+3.210 x2-1.307 x3=2.425
4.270 x1-0.513 x2+1.102 x3=-0.176
0.012 x1+1.273 x2-4.175 x3=1.423
e) 10 x1-x2+2 x3-3 x4=0
x 1-10 x2-x3+2 x4=0
2 x1+3 x2+20 x3-x4=-10
3 x1+2 x2+x3+20 x4=15
ж) 2 x1+3 x2-4 x3+x4-3.1=0
0.1 x1-2 x2-5 x3+x4-2=0
0.15 x1-3 x2+x3-4 x4-1=0
10 x1+2 x2-x3+2.1 x4+4.7=0
з) 3 x1+1.5 x2-x3+2.4 x4=6
-0.5 x1+x2-3.1 x3-4 x4=-12
2 x1-0.8 x2-4 x4=1
x1-1.3 x2+3.9 x3-3.7 x4=3.1
и) 4.13 x1-2.87 x2-1.94 x3+0.61 x4=0.32
1.27 x1+7.23 x2-0.15 x3+1.71 x4=-4.16
0.19 x1+2.75 x2+3.14 x3-0.76 x4=2.33
2.87 x1+4.33 x2-2.41 x3-3.42 x4=2.79
к) x1+3 x2-2 x3-2 x5=0.5
3 x1+4 x2-5 x3+x4-3 x5=5.4
-2 x1-5 x2+3 x3-2 x4+2 x5=5
x2-2 x3+5 x4+3 x5=7.5
-2 x1-3 x2+2 x3+3 x4+4 x5=3.3
л) 7.9 x1+5.6 x2+5.7 x3-7.2 x4=6.68
8.5 x1-4.8 x2+0.5 x3+3.5 x4=9.95
4.3 x1+4.2 x2-3.2 x3+9.3 x4=8.6
3.2 x1-1.4 x2-8.9 x3+8.3 x4=1
м) 10.2 x1+6.07 x2-9.1 x3+50.3=0
9.28 x1-79.6 x2-4.92 x3+25.8=0
68.3 x1-2.71 x2-8.14 x3+32.6=0
Есть код на С++
#include <stdio.h>
int main(int argc, char* argv[]) {
const int n = 3;
double A[n][n] = {{10, 1, 1}, {2, 10, 1}, {2, 2, 10}};
double B[n] = {12, 13, 14};
double X[n] = {0};
printf("Linear system of equations:\n\n");
for(int i=0; i<n; i++) {
for(int j=0; j<n-1; j++)
printf("(%.2f) * x%d + ", A[i][j], j);
printf("(%.2f) * x%d = %.2f\n", A[i][n-1], n-1, B[i]);
}
for(int i=0; i<n-1; i++) {
for(int j=i+1; j<n; j++) {
double multiplier = A[j][i] / A[i][i];
for(int k=0; k<n; k++)
A[j][k] -= A[i][k] * multiplier;
B[j] -= B[i] * multiplier;
}
}
for(int i=n-1; i>=0; i--) {
X[i] = B[i];
for(int j=n-1; j>i; j--)
X[i] -= A[i][j] * X[j];
X[i] /= A[i][i];
}
printf("\nResult vector X:\n");
for(int i=0; i<n; i++)
printf("X[%d] = %.2f\n", i, X[i]);
return 0;
}