Matlab if else循环

时间:2018-11-10 23:09:05

标签: matlab

欢迎,我想检查数字是否为偶数,非偶数或非整数,并且我不知道如何检查最后一种情况。我的代码:

disp('check number');
x = input('give number = ');
if mod(x,2)== 0
    disp(' even number');
elseif mod(x,2)~= 0
    disp(' not even number');
else mod(x,2)== float
    disp('non integer');  
end

1 个答案:

答案 0 :(得分:2)

else子句不带条件表达式,因此要使用它,我们需要确保在到达那里之前,已处理所有整数。幸运的是,如果我们捕获所有 even 个整数和所有 odd 个整数,那么剩下的就不是整数。

if子句看起来不错,如果mod(x,2) == 0则为偶数,因此让我们保持。对于elseif部分,对于所有整数,mod(x,1) == 1。通常,这将同时捕获奇数和偶数整数,但是由于我们已经处理了if子句中的所有偶数整数,因此我们可以安全地假定到达此处的任何整数都是奇数。超过这两个条件的任何东西都必须是非整数。

disp('check number');
x = input('give number = ');
if mod(x,2) == 0
    disp(' even number');
elseif mod(x,1) == 0
    disp(' not even number');
else
    disp('non integer');
end