作者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