作者henryt888 (小亨利)
看板MATLAB
標題[問題]關於程式控制的問題
時間Mon Mar 12 15:36:25 2012
不好意思最近在寫程式,想利用程式來解線性聯立方程式
可是不知道哪裡出了問題........怎麼跑都只會出現cannot handle這行...
以下是我所寫的....請教各位大大了...
function result=matrix(A,b)
[NR,NC]=size(A)
[nr,nc]=size(b)
if (nc ~= 1|NR~=nr)
disp('b的行數須為1且A的列數須等於b的列數,否則無法運算')
result='cannot handle';
else
if(NR == NC&NR == nr&nc == 1)
if (det(A)==0);
C=pinv(A);
D=C*b;
disp('第一個數為X的最接近範數解、第二個數為Y的最接近範數解...以此類推')
result=D
else
disp('第一個為X的解,第二個為Y的解......以此類推')
E=inv(A);
F=E*b;
result=F
end
elseif(NR < NC&NR == nr&nc == 1)
disp('此為其中可能的解')
result=A\b
elseif(NR > NC&NR == nr&nc == 1)
Am=[A,b];
disp('最後一行皆為解')
result=rref(Am)
else
disp('cannot handle')
end
end
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.203.129
1F:推 diva:把所有的 & 換成 &&, 把所有的| 換成||試試 03/12 15:43
2F:→ henryt888:挖~謝謝~真的可以耶XD~~可是我不懂一個&和兩個&有什麼差 03/12 15:53
3F:推 Raymond0710:&是位元的運算 03/12 17:00
4F:→ Berger927:邏輯與位元的差別 03/12 17:12