2013-05-22 77 views

回答

2
subZero = zeros(3, 9); 
subFive = 5*ones(3, 9); 
subsubOnes = ones(3, 1); 
subsubFive = 5*ones(3, 8); 

subOneFive = [subsubOnes subsubFive]; 

yourMatrix = [subZero; subFive; subOneFive]; 
2

您是否尝试过在初始化像这样的时间与价值创造矩阵:

myMatrix = [... 
    0 0 0 0 0 0 0 0 0 
    0 0 0 0 0 0 0 0 0 
    0 0 0 0 0 0 0 0 0 
    5 5 5 5 5 5 5 5 5 
    5 5 5 5 5 5 5 5 5 
    5 5 5 5 5 5 5 5 5 
    1 5 5 5 5 5 5 5 5 
    1 5 5 5 5 5 5 5 5 
    1 5 5 5 5 5 5 5 5]; 

我知道有更简单的方法来初始化。

6

下面是会教你,如果你有兴趣够了如何使用MATLAB的答案:

A = bsxfun(@times, ones(9), kron([0 5 5], [1 1 1])') - ... 
    [kron([0 0 4], [1 1 1])' zeros(9,8)] 

结果:

A = 
    0  0  0  0  0  0  0  0  0 
    0  0  0  0  0  0  0  0  0 
    0  0  0  0  0  0  0  0  0 
    5  5  5  5  5  5  5  5  5 
    5  5  5  5  5  5  5  5  5 
    5  5  5  5  5  5  5  5  5 
    1  5  5  5  5  5  5  5  5 
    1  5  5  5  5  5  5  5  5 
    1  5  5  5  5  5  5  5  5 
相关问题