a=magic(5)
k=a,3
当我打印k
时,它只是显示a
。Octave中的变量=(矩阵,标量)是什么意思?
m=size(a,3)
n=size(a,6)
和
当我打印m
n
,他们打印不同的值。
任何人都请解释一下这个功能是什么?
a=magic(5)
k=a,3
当我打印k
时,它只是显示a
。Octave中的变量=(矩阵,标量)是什么意思?
m=size(a,3)
n=size(a,6)
和
当我打印m
n
,他们打印不同的值。
任何人都请解释一下这个功能是什么?
在八度4.2.1
k=a,3
矩阵a
分配给变量k
,然后,作为一个第二指令,对打印CommandWindow值3
。
使用,
(逗号)是为了在同一行上有两条指令。
的alterntive可以与具有抑制对分配k=a
随着respec的CommandWindow输出到
m=size(a,3)
n=size(a,6)
第二paramenter n中的呼叫的效果;
被替换,
size
指定要为其知道大小的矩阵(第一个参数)的dimension
。
a
是大小为(5 x 5)
的两个“维”矩阵,而指令size(a,3)
查找a
的第三维的大小。
以类似的方式,size(a,6)
寻找a
的第六维的大小。在这些情况下,a
被视为(5 x 5 x 1)
和(5 x 5 x 1 x 1 x 1 x 1)
的返回值,是1
这是CommandWondow输出:
>> a=magic(5)
a =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
>> k=a,3
k =
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
ans = 3
>> m=size(a,3)
m = 1
>> n=size(a,6)
n = 1
希望这有助于
Qapla'
在matlab/octave中,有三种方法来终止ex压力(例如, 1+2
):
;
,
第一个(即,分号),评估表达式,但会抑制其输出。另外两个(即逗号和换行符),都评估语句和也显示其结果。
为什么同时使用逗号和换行符?因为用逗号可以在同一行上评估多个表达式(并且可以显示它们的结果)。
注意:鉴于大多数人以不同的方式写出他们的表达式,逗号往往不会被使用太多,所以它不太了解。
例子:
octave:1> 1+2, 3+4
ans = 3
ans = 7
octave:2> 1+2; 3+4;
octave:3> 1+2; 3+4
ans = 7
octave:4> 1+2, 3+4;
ans = 3
octave:5> for i = 1:3; i; end % output in each iteration is suppressed
octave:6> for i = 1:3; i, end % whereas with a comma, output is not suppressed
i = 1
i = 2
i = 3
因此您的语句:
a = magic(5)
k = a, 3
基本上等同于
a = magic(5) % newline used: display value of a after assignment
k = a, % comma used, assign value of a to k, then display k
3 % newline used: displays the value '3' after pressing enter
此外size
功能不会做你认为它的功能。 size(a,3)
返回3
维度中的数组a
的大小。
它给出语法错误! – OmG
@OmG它没有。这是有效的MATLAB语法,尽管完全没用......除非你是代码打高尔夫! il_raffa的答案也保存在MATLAB中。 – rayryeng
@rayryeng问题的标题是Octave。并且此代码在Octave中有语法错误。 – OmG