首页 > 解决方案 > 如何在保持矩阵完整的同时对矩阵行执行操作?

问题描述

问题/问题摘要:

创建一个 10 x 10 矩阵,其第一列是数字1,2,3,4,5,6,7,8,9,10
下一列包含第一列的正方形:1,4,9,... ,100
第三列包含第一列的 3 次方:1、8、27、...、1000
第 10 列包含第一列的 10 次方。

背景:

这是一个课堂作业,分析编程的介绍。我尝试了以下代码,但我不确定为什么它没有给出正确的输出。任何意见或建议表示赞赏。

    row1 = [1:10]
    tenXtenMatrix = repmat(row1,10,1)
    [row col] = size(tenXtenMatrix)
    for i=2:row
        for j=1:col
            tenXtenMatrix(i,:).^i
        end
    end

预期:

     1     2     3     4     5     6         7        8           9          10

     1     4     9    16    25    36        49       64          81         100

     1     8    27    64    125   216      343      512         729        1000

     1    16    81    256   625   1296    2401     4096        6561       10000
     etc..

我得到了什么:

    0.0000  0.0000   0.0000  0.0001   0.0010 0.0060  0.0282 0.1074  0.3487  1.0000
    0.0000  0.0000   0.0000  0.0001   0.0010 0.0060  0.0282 0.1074  0.3487  1.0000
    0.0000  0.0000   0.0000  0.0001   0.0010 0.0060  0.0282 0.1074  0.3487  1.0000
    0.0000  0.0000   0.0000  0.0001   0.0010 0.0060  0.0282 0.1074  0.3487  1.0000
    etc...

标签: matlab

解决方案


使用隐式扩展

x = 1:10  
A = x.^(x.')

在哪里:

有关隐式扩展的更多信息在这里


推荐阅读