冒号算子

优质
小牛编辑
136浏览
2023-12-01

冒号:是MATLAB里面一个十分重要的算子,适用于各种不同的表达式。 例如表达式

 

    1:10
    

表示一行从1到10的整数

    1     2     3     4     5     6     7     8     9    10
    

为了改变递变的间隔,可以指定一个间隔长度 ,例如

 

    100:-7:50
    

表示为

    100    93    86    79    72    65    58    51
    

    0:pi/4:pi
    

表示

    0    0.7854    1.5708    2.3562    3.1416
    

含有冒号的下标表达式也可以用来表示矩阵的一部分

    A(1:k,j)
    

i表示A的第j列前k个元素,因此

    sum(A(1:4,4)) 
    

表示计算a的第4列元素的和。但是这里有一种更加方便的办法。关键字':'本身可以表示某行或某列的全体元素,而我们可以用关键字end来表示最后一行或者最后一列的全体元素,所以

    sum(A(:,end))
    

是计算a的最后一列元素的和。故有

    ans =
         34
    

为什么一个4×4的魔方矩阵的魔术和是34呢?如果我们从1加到16再把答案除以4,即

    sum(1:16)/4
    

答案当然是

    ans =
         34