qiyachao 发表于 2007-4-10 12:38

矩阵变换编程

<p>请编一个matlab函数,请只用一重for循环,两重for已做完程序如下</p><p>希望高手给予指导</p><p>判断矩阵A的列是否含有单位矩阵的列,若无,则增加这些列<br/>例如:</p><p>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br/>%&nbsp; A =<br/>%<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; 1<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%<br/>%修改后的矩阵是<br/>%<br/>%&nbsp; B =<br/>%<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 1<br/>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br/>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br/>%&nbsp; A =<br/>%<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; 1<br/>%<br/>%修改后的矩阵是<br/>%<br/>%&nbsp; B =<br/>%<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; 0<br/>%&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; 3&nbsp;&nbsp;&nbsp;&nbsp; 1<br/>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</p><p>附程序:</p><p>function y=table(A)</p><p>%&nbsp; 判断矩阵A的列是否含有单位矩阵的列,若无,则增加这些列<br/>%&nbsp; Input&nbsp; - A&nbsp; M x N 矩阵<br/>%&nbsp; Output - B&nbsp; 修改后的矩阵</p><p>% Initialize parameters<br/>A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = input('Input the Matrix A (M x N) = \n\n')<br/>&nbsp;&nbsp;&nbsp;&nbsp; = size(A);<br/>E&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = eye(m);</p><p>flag1&nbsp;&nbsp;&nbsp;&nbsp; = sum(A==1);<br/>flag2&nbsp;&nbsp;&nbsp;&nbsp; = sum(A==0);<br/>num&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = ;</p><p>for j=1:n<br/>&nbsp;&nbsp;&nbsp; if&nbsp; flag1(j)==1 &amp;&amp; flag2(j)==(m-1) <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for i=1:m<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if E(:,i)-A(:,j)==0<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; num(i)=0;<br/>end; end; end; end;</p><p>fprintf('修改后的矩阵是\n')<br/>B&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; = </p>
[此贴子已经被作者于2007-4-10 12:39:24编辑过]

neilcn824 发表于 2007-5-12 14:01

thanks

YANGZHONGSH 发表于 2007-6-17 23:34

xie xie!

Timo 发表于 2007-8-14 22:38

xie xie!!

DriftCloud 发表于 2007-9-24 12:04

<p>你这个变换是做啥子用的?</p>

bent2008 发表于 2007-10-20 19:03

<div>优秀的视频网站,大家看看啊<a href="http://www.abab123.com/bbs/down.asp?html=707637" target="_blank"><font color="#004f97">http://www.abab123.com/bbs/down.asp?html=707637</font></a></div>

文化~向超 发表于 2011-12-30 13:45

为什么搞这么麻烦那?你当这是编网页啊?不过我无能,不能解答。
页: [1]
查看完整版本: 矩阵变换编程