Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2010-12-17, 14:25   #1
半條龍
初级会员
 
注册日期: 2010-03-10
帖子: 19
声望力: 16
半條龍 正向着好的方向发展
默认 问一下指定矩阵某列为0的程序实现

不好意思的打扰一下各位 在此先恳请帮助 谢谢
小弟最近又遇上个有趣问题 依提示将值改为零

以下是小弟数据
A = [5 6 7 8 9;4 5 6 7 8;1 2 3 4 5;6 7 8 9 1;8 9 4 5 5;8 9 6 6 6;1 2 5 5 8;7 8 9 9 7;4 6 7 8 9;5 5 5 6 9;2 2 4 5 6;3 5 4 6 9;7 8 9 5 4;9 8 7 5 6;6 7 8 9 9;7 8 9 9 9;1 5 7 9 7;4 5 6 6 4];
B = [1;5;7];
C =[1001;1002;1003;2001;2002;2003;3001;3002;3003;4001;4003;5001;5003;6001;6002;6003;7001;7002];

就是A的每列我们都给他代号C 所以A与C的关系就是
A = [5 6 7 8 9; ---> C = [1001;
4 5 6 7 8; ---> 1002;
1 2 3 4 5; ---> 1003;
6 7 8 9 1; ---> 2001;
8 9 4 5 5; ---> 2002;
8 9 6 6 6; ---> 2003;
1 2 5 5 8; ---> 3001;
7 8 9 9 7; ---> 3002;
4 6 7 8 9; ---> 3003;
5 5 5 6 9; ---> 4001;
2 2 4 5 6; ---> 4003;
3 5 4 6 9; ---> 5001;
7 8 9 5 4; ---> 5003;
9 8 7 5 6; ---> 6001;
6 7 8 9 9; ---> 6002;
7 8 9 9 9; ---> 6003;
1 5 7 9 7; ---> 7001;
4 5 6 6 4]; ---> 7002];
我希望求得的D的第一排 = A的第一排
之后排的值会由于B= [1;5;7];所指的数字将A的千位数代号的那列值设为零 所以D=
D = [5 0 0 0 0; ---> C = [1001;
4 0 0 0 0; ---> 1002;
1 0 0 0 0; ---> 1003;
6 7 8 9 1; ---> 2001;
8 9 4 5 5; ---> 2002;
8 9 6 6 6; ---> 2003;
1 2 5 5 8; ---> 3001;
7 8 9 9 7; ---> 3002;
4 6 7 8 9; ---> 3003;
5 5 5 6 9; ---> 4001;
2 2 4 5 6; ---> 4003;
3 0 0 0 0; ---> 5001;
7 0 0 0 0; ---> 5003;
9 8 7 5 6; ---> 6001;
6 7 8 9 9; ---> 6002;
7 8 9 9 9; ---> 6003;
1 0 0 0 0; ---> 7001;
4 0 0 0 0 ]; ---> 7002];
半條龍 当前离线   回复时引用此帖
旧 2010-12-17, 17:12   #2
半條龍
初级会员
 
注册日期: 2010-03-10
帖子: 19
声望力: 16
半條龍 正向着好的方向发展
默认 回复: 问一下指定矩阵某列为0的程序实现

A = [5 6 7 8 9;4 5 6 7 8;1 2 3 4 5;6 7 8 9 1;8 9 4 5 5;8 9 6 6 6;1 2 5 5 8;7 8 9 9 7;4 6 7 8 9;5 5 5 6 9;2 2 4 5 6;3 5 4 6 9;7 8 9 5 4;9 8 7 5 6;6 7 8 9 9;7 8 9 9 9;1 5 7 9 7;4 5 6 6 4];
B = [1;5;7];
C =[1001;1002;1003;2001;2002;2003;3001;3002;3003;4001;4003;5001;5003;6001;6002;6003;7001;7002];
n = floor(log10(C(1))) + 1;
num=mod(floor(C./10.^(n-1)),10);
D=A;
D(ismember(num,B),2:end)=0;
半條龍 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 03:55


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.