![]() |
问一下指定矩阵某列为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= [[COLOR="Blue"]1;5;7[/COLOR]];所指的数字将A的千位数代号的那列值设为零 所以D= D = [5[COLOR="DarkRed"] 0 0 0 0;[/COLOR] ---> C = [[COLOR="blue"]1001;[/COLOR] 4[COLOR="darkred"] 0 0 0 0;[/COLOR] ---> [COLOR="blue"]1002;[/COLOR] 1 [COLOR="darkred"]0 0 0 0; [/COLOR] ---> [COLOR="Blue"]1003;[/COLOR] 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 [COLOR="darkred"]0 0 0 0; [/COLOR] ---> [COLOR="blue"]5001;[/COLOR] 7 [COLOR="darkred"]0 0 0 0;[/COLOR] ---> [COLOR="blue"]5003;[/COLOR] 9 8 7 5 6; ---> 6001; 6 7 8 9 9; ---> 6002; 7 8 9 9 9; ---> 6003; 1 [COLOR="darkred"]0 0 0 0;[/COLOR] ---> [COLOR="blue"]7001;[/COLOR] 4 [COLOR="darkred"]0 0 0 0[/COLOR] ]; ---> [COLOR="blue"]7002[/COLOR]]; |
回复: 问一下指定矩阵某列为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; |
所有时间均为北京时间。现在的时间是 12:23。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.