我不知道在这段代码中我在哪里做错了 我想创建一个偶数nos的数组。所以我在matlab中编写了以下代码:
A=[];
n=2;
while n!=5
if n%2==0
A=[A n];
n++;
else
n++;
end
end
disp(A)
以下内容显示为输出:
2 3 4
我无法理解为什么所有的人。正在显示1到5之间 任何人都可以解释我错在哪里.......
答案 0 :(得分:3)
我觉得你很早就出错了。试试这个
A = 2:2:8
然后转到Matlab文档并阅读colon
运算符。然后忘记C和C ++(所有那些n++
和外语的其他语法元素是什么?)。然后忘掉循环并了解矢量化,你可以从Matlab中获得更多,而且工作量更少。
答案 1 :(得分:1)
我不知道在这段代码中我做错了什么。
~=
; !=
是无效的MATLAB语法。n
,则需要编写n = n + 1
; n++
是无效的MATLAB语法。%
字符开始一行注释; 不是模数运算符。相反,您希望使用rem
函数或mod
函数(对于非负输入等效)。此外,您不需要循环来创建这样一个简单的行向量,其中元素遵循算术序列。只需使用MATLAB' colon operator:
<start> : <step> : <bound>
或者更简单地说
<start> : <bound>
其中该步骤为1
。
这里,
2:2:8
或
2 * (1 : 4)
会做到这一点。