While Loop is not ending, just keeps repeating from top
3 views (last 30 days)
Show older comments
Nicholas Nightingale
on 19 Sep 2015
Edited: James Tursa
on 19 Sep 2015
I am trying to create a guessing game where the user chooses from 3 colours, this is my script so far.
colour = {'Red','Green','Blue'}
x=colour{randi(numel(colour))}
guess = 0
while guess ~= 1
guess = input('Guess the colour, is it Red, Green, or Blue? ','s')
if(strcmp(guess,x)==1)
continue
else
display('Incorrect')
end
end
display('Correct')
Forgive my lack of not knowing how to organise this post a little better and thankyou in advance for your answers.
0 Comments
Accepted Answer
James Tursa
on 19 Sep 2015
Edited: James Tursa
on 19 Sep 2015
Some slight changes:
colour = {'Red','Green','Blue'}
x=colour{randi(numel(colour))}; % <-- Added semi-colon so you don't print answer
% guess = 0 <-- don't need this
while( true ) % <-- changed condition
guess = input('Guess the colour, is it Red, Green, or Blue? ','s')
if(strcmp(guess,x)==1)
break; % <-- changed continue to break
else
display('Incorrect')
end
end
display('Correct')
2 Comments
James Tursa
on 19 Sep 2015
Edited: James Tursa
on 19 Sep 2015
continue means to immediately go to the top of the loop and start the next iteration of the loop.
break means to break out of the loop and start executing at the line immediately after the end of the loop.
More Answers (0)
See Also
Categories
Find more on Conway's Game of Life in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!