Repeated user input for even numbers

The code needs to keep asking for user input until an even number is inputted. I've got this code so far:
a = input('Input a value: ');
b = 2;
if rem(a,b) == 0
disp('Your value is even.')
else
a = input('Input a value of a');
end
but this only works twice when an odd number has been entered. How do I get it to keep asking for an input until an even number has been entered?

2 个评论

%Create variable modvalue and use while loop to remain asking.
modvalue = 1;
while(modvalue~=0)
a = input('Input a value: ');
b = 2;
modvalue = rem(a,b)
end
disp('Your value is even.')

请先登录,再进行评论。

 采纳的回答

The while loop will continually ask for a non-zero even integer until one is entered.
prompt= 'Input a value: '
z = 1;
while mod(z,2)~=0
z= input(prompt)
end
Very similar question was asked on the same day here:

更多回答(0 个)

类别

在 帮助中心 和 File Exchange 中查找有关 Get Started with MATLAB 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by