Предложение else
не принимает условное выражение, поэтому для его использования нам нужно убедиться, что все целые числа обработаны до того, как мы туда попадем. К счастью, если мы поймаем все четные целые числа и все нечетные целые числа, все, что осталось, не является целым числом.
Предложение 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