MATLAB中的問題用於求解期望的'n'類型的聯立方程的數量Ax = b假設求解涉及上三角矩陣,A和b的值與x值一起演變爲Aprime和bprime。用於求解期望'n'類型聯立方程的MATLAB代碼Ax = b
問題是要編寫一個代碼,可以使用上三角矩陣求解類型爲Ax = b的「n」個聯立方程。 A和b的值在命令窗口中以矩陣形式給出。當程序成功運行時,代碼應該返回Aprime,bprime和x值作爲答案。代碼還應該給出輸出爲「錯誤,矩陣尺寸不匹配」(或任何!)的某些方程!代碼工作正常,除了顯示錯誤以及上面給出的錯誤消息。
我用如下的代碼,
function [x, Aprime, bprime]=solved(A,b)
n = size(A);
% Assign the size of A to n.
if (n(1)~= n(2)) || (det(A) == 0)
% Checking through the determinant method for dimension error.
disp('ERROR!! Matrix dimensions should agree.')
else
for j=1 %:n-1
% Fix the first value of j to 1.
if A(j,j)==0
u=A(j,:);
A(j,:)=A(j+1,:);
A(j+1,:)=u;
%using u as a temperary value "u", to save the row,to swap the positions of two rows.
v=b(j);
b(j)=b(j+1);
b(j+1)=v;
%using u as a temperary variable "v", to save the row,to interchange the positions of two rows in b matrix.
end
for i=j+1:n
if A(i,j)~=0
%If the first number of the particular row be zero.
b(i)=b(j)+(b(i)*(-A(j,j)/A(i,j)));
A(i,:) = A(j,:)+(A(i,:)*(-A(j,j)/A(i,j)));
end
%After this 'for'loop, the matrix becomes a upper triangle matrix.
end
Aprime=A;
bprime=b;
x=A\b;
% Using this command the values of x,y,z can be found.
end
end
end
請提供適當的校正....命令窗口上所獲得
結果,
A = [1 1 0; 2 1 1; 1 2 3]
A =
1 1 0
2 1 1
1 2 3
B = [3; 7; 14]
B =
3
7
14
[X 4月IME,bprime] =解決(A,B)
X =
1
2
3
Aprime =
1.0000 1.0000 0
0 0.5000 -0.5000
0 -1.0000 -3.0000
bprime =
3.0000
-0.5000 - 11。0000
第二種類型是,
A = [1 2 3; 4 5 6]
A =
1 2 3
4 5 6
B = [7; 8; 9; 10]
B =
7
8
9
10
[x,Aprime,bprime] =求解(A,b) 錯誤!矩陣尺寸應該一致。 (第2行) n =大小(A); 在調用 「C:\ Users \ Hari \ Documents \ solve.m>」時未分配輸出參數「x」(也可能是其他人)。
你能解決你的問題的格式嗎?目前很難閱讀。 –
如果我理解你的問題,你所要做的就是將x,Aprime和bprime設置爲某些東西(如x = [];),你在哪裏顯示錯誤 – ioums
我不明白你的意思是什麼格式!問題是使用上三角矩陣求解類型Ax = b的聯立方程! –