bhy521 发表于 2006-11-17 12:17

求助调用矩阵

求助高手,怎样调用矩阵.用一个变量来表示一个矩阵.如
clear
for i=1:5
    p(1)=20;
    p(i+1)=5*p(i);
    fprintf('%d\n',p(i+1));
   
    end
    若把初值20    换成一个矩阵如   

若想用一个变量p(i)中 i 的变化来代表一个矩阵,此算法该怎么编程.

Tla 发表于 2006-11-17 18:22

那样应该可以用元胞实现的吧!把你的p(i)换成p{i}问题就几乎能够解决掉了
P:楼主似乎不常用Matlab吧!你的程序可以改进的地方有很多...

eight 发表于 2006-11-17 18:29

原帖由 Tla 于 2006-11-17 18:22 发表
那样应该可以用元胞实现的吧!把你的p(i)换成p{i}问题就几乎能够解决掉了
P:楼主似乎不常用Matlab吧!你的程序可以改进的地方有很多...


Tla兄能够看明白楼主的用意,实在高!我看了半天没有看懂

[ 本帖最后由 eight 于 2006-11-17 18:30 编辑 ]

Tla 发表于 2006-11-17 18:50

原帖由 eight 于 2006-11-17 18:29 发表
Tla兄能够看明白楼主的用意,实在高!我看了半天没有看懂
:@D猜的,估计它也是想把一个矩阵整体处理,就推荐一下用元胞,
不知道 eight 还有什么新奇的想法?

eight 发表于 2006-11-17 19:00

原帖由 Tla 于 2006-11-17 18:50 发表

:@D猜的,估计它也是想把一个矩阵整体处理,就推荐一下用元胞,
不知道 eight 还有什么新奇的想法?


实话说,我仍然没有看懂楼主的意思,呵呵

xjzuo 发表于 2006-11-17 19:49

回复

真没看懂.---是把矩阵当成一个"块"来调用吗?
建议先把问题讲清楚一些.

[ 本帖最后由 xjzuo 于 2006-11-17 19:55 编辑 ]

Tla 发表于 2006-11-17 21:13

原帖由 eight 于 2006-11-17 19:00 发表

实话说,我仍然没有看懂楼主的意思,呵呵
嗯,,看来应该好好琢磨琢磨这个问题了,楼主跑哪儿去了?来给解释一下!
附上我的理解:

for i = 1:5
A{i} = rand(i);% 测试用
end


B{1} = rand(3);
for i = 1:5
B{i+1} = 5*A{i};
disp(B{i});
end

不知道这是不是楼主想要的!顺便问问 eight,你将会怎样理解这个问题呢!我现在也迷糊了,最开始还只以为它就是那么回事!

[ 本帖最后由 Tla 于 2006-11-17 21:15 编辑 ]

eight 发表于 2006-11-17 21:38

原帖由 Tla 于 2006-11-17 21:13 发表

嗯,,看来应该好好琢磨琢磨这个问题了,楼主跑哪儿去了?来给解释一下!
附上我的理解:

for i = 1:5
A{i} = rand(i);% 测试用
end


B{1} = rand(3);
for i = 1:5
B{i+1} = 5*A{i};
disp(B{i});
...


仍然迷惑中。。。。。。。。。

Tla 发表于 2006-11-17 21:49

原帖由 eight 于 2006-11-17 21:38 发表



仍然迷惑中。。。。。。。。。


若想用一个变量p(i)中 i 的变化来代表一个矩阵,

猜楼主可能只是想把一矩阵与一个数做一个整体上的乘法运算,
就给了上面的程序简单示例了一下。现在看来我想法应该有一些不妥了!
照楼主说的用一个变量的变化代表矩阵,想了想似乎应该只有A{i}和A(:,:,i)能够基本上满足,不过A(:,:,i)似乎需要前面的两个必须相同大小,用A{i}更灵活。

现在我也迷惑了,等待楼主过来给解释一下子!eight,能把你的看法说出来吗?原本以为这只是一个很基础的问题。现在看来有一些不太对劲了。。。

eight 发表于 2006-11-18 10:44

原帖由 Tla 于 2006-11-17 21:49 发表



猜楼主可能只是想把一矩阵与一个数做一个整体上的乘法运算,
就给了上面的程序简单示例了一下。现在看来我想法应该有一些不妥了!
照楼主说的用一个变量的变化代表矩阵,想了想似乎应该只有A{i}和A(:,:,i ...


恐怕要等楼主现身了,按照他的简略表达,我无法想出他的用意

bainhome 发表于 2006-11-18 18:00

皇帝不急太监急...
eight、tla:
你们两个真是有病!:lol:lol

[ 本帖最后由 bainhome 于 2006-11-18 18:03 编辑 ]

Tla 发表于 2006-11-18 19:06

原帖由 bainhome 于 2006-11-18 18:00 发表
皇帝不急太监急...
eight、tla:
你们两个真是有病!:lol:lol
:@L
初步估计为这是一个非常新奇的用法!很有兴趣知道一下...所以就讨论开了

yanyongju 发表于 2006-11-18 19:07

实现矩振作为单元的操作,我推介用元胞,也可以用多维数组来实现,例如定义A{i,j},其中A{i,j}中的每一个元素均可以为矩阵,比如A{1,1}=B,实现矩阵操作。用MATLAB实现N皇后问题时就需要把矩阵作为单元,我们就可以用A{i,j}这种方法来实现。

bhy521 发表于 2006-11-19 11:28

多谢几位大哥的指点,我刚学matlab没几天表述的不是很清楚给你们添麻烦了.刚把问题发表了,就有事出去了,请原谅,实在抱歉.在此谢谢几位了,我把你门的程序试一下.

bhy521 发表于 2006-11-19 19:44

我表述的不是很清楚,Tlad的例子就是我所要的,翻了两本书没有发现用下标来表示矩阵的例子.没想到我这块砖引来了两块玉,我还达不到与你门交流的水平,刚刚学,正在努力,谢谢!!!
页: [1]
查看完整版本: 求助调用矩阵