level 1
hscote
楼主
A = {{2, -2, 1, -1, 1}, {1, -4, 2, -2, 3}, {4, -10, 3, -5, 7}, {1,
2, -1, 1, -2}};
b = {2, 3, 8, -1};
(* 求增广矩阵 *)
B = Transpose[Join[Transpose[A], {b}]];
a1 = Dimensions[A][[2]];
Array[y, a1];
z = %;
z1 = %;
z3 = %;
z = AppendTo[z, -1];
(* 求行最简形矩阵 *)
RowReduce[B];
B = %;
TableForm[B.z];
(* 确定非自由未知量和自由未知量 *)
Table[0, {i, a1 + 1}];
o = %;
B1 = Join[B, {o}];
c1 = {};
c2 = {};
For[i = 1, i <= Dimensions[B][[2]], i = i + 1,
If[B1[[Length[c1] + 1]][[i]] = 0, AppendTo[c2, i], AppendTo[c1, i]]]
c3 = Delete[c2, Length[c2]];
(* 确定通解 *)
TableForm[Transpose[Transpose[B][[c3]]]];
Array[c, Length[c3]];
z2 = %;
B8 = Transpose[B][[a1 + 1]] - Transpose
[Transpose[B][[c3]]].z2;
TableForm[B8];
(* 判断是否有解;若有解,给出表达式 *)
If[c1[[Length[c1]]] Dimensions[B][[2]], Print["方程组无解 ! "],
For[i = 1, i <= Length[c1], i = i + 1,
z1 = ReplacePart[z1, B8[[i]], c1[[i]]]];
For[i = 1, i <= Length[c3], i = i + 1,
z1 = ReplacePart[z1, z2[[i]], c3[[i]]]]; Print["方程组通解为 : "];
For[i = 1, i <= a1, i = i + 1,
Print[TableForm[z3[[i]]], 为, TableForm[z1[[i]]]]]]
请老师费心看看,谢谢了!如果您有现成的方法提供就更好了!!!
2019年02月26日 16点02分
1
2, -1, 1, -2}};
b = {2, 3, 8, -1};
(* 求增广矩阵 *)
B = Transpose[Join[Transpose[A], {b}]];
a1 = Dimensions[A][[2]];
Array[y, a1];
z = %;
z1 = %;
z3 = %;
z = AppendTo[z, -1];
(* 求行最简形矩阵 *)
RowReduce[B];
B = %;
TableForm[B.z];
(* 确定非自由未知量和自由未知量 *)
Table[0, {i, a1 + 1}];
o = %;
B1 = Join[B, {o}];
c1 = {};
c2 = {};
For[i = 1, i <= Dimensions[B][[2]], i = i + 1,
If[B1[[Length[c1] + 1]][[i]] = 0, AppendTo[c2, i], AppendTo[c1, i]]]
c3 = Delete[c2, Length[c2]];
(* 确定通解 *)
TableForm[Transpose[Transpose[B][[c3]]]];
Array[c, Length[c3]];
z2 = %;
B8 = Transpose[B][[a1 + 1]] - Transpose
[Transpose[B][[c3]]].z2;
TableForm[B8];
(* 判断是否有解;若有解,给出表达式 *)
If[c1[[Length[c1]]] Dimensions[B][[2]], Print["方程组无解 ! "],
For[i = 1, i <= Length[c1], i = i + 1,
z1 = ReplacePart[z1, B8[[i]], c1[[i]]]];
For[i = 1, i <= Length[c3], i = i + 1,
z1 = ReplacePart[z1, z2[[i]], c3[[i]]]]; Print["方程组通解为 : "];
For[i = 1, i <= a1, i = i + 1,
Print[TableForm[z3[[i]]], 为, TableForm[z1[[i]]]]]]
请老师费心看看,谢谢了!如果您有现成的方法提供就更好了!!!