a = 4;
b = input ('2+2=? ')
if b == a
'ok'
else
b = input ('retry ')
if b == a
'ok'
else
b = input ('retry ')
if b == a
'ok'
else 'NOK'
end
end
end

 Réponse acceptée

Image Analyst
Image Analyst le 31 Mar 2013
Modifié(e) : Image Analyst le 31 Mar 2013

0 votes

I think you want
a = 4;
b = 0;
while b ~= a
b = input ('2+2=? ');
if b == a
break;
end
fprintf('Incorrect. Try again.\n');
end
fprintf('Correct.\n');

1 commentaire

Image Analyst
Image Analyst le 31 Mar 2013
If you want to limit it to three tries, add a counter:
a = 4;
b = 0;
counter = 1;
while b ~= a && counter <= 3
b = input ('2+2=? ');
if b == a
break;
end
fprintf('Incorrect. Try again.\n');
counter = counter + 1;
end
if counter <= 3
fprintf('Correct.\n');
end

Connectez-vous pour commenter.

Plus de réponses (1)

Nicolò
Nicolò le 31 Mar 2013

0 votes

Yes, but I would like to repeat this code up to three times if the number entered is incorrect

2 commentaires

Image Analyst
Image Analyst le 31 Mar 2013
This is not an answer to your question. It should have been a comment to my answer so I'll put the response there.
Nicolò
Nicolò le 31 Mar 2013
thanks

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by