# While loop???

3 visualizzazioni (ultimi 30 giorni)
Sean il 12 Ott 2011
Write a script that generates a random integer number between 1 and 10 (you will need to use rand and round(...)functions. Prompt player to guess number. Using a while loop, continue prompting the user until the correct number is guessed. Output both the correct number and the number of guesses.
ask=input('Enter a number between 1 and 10:');
number=1+round(rand*(9));
total=0;
if(number<1 || number>10);
disp('Invalid')
total=guess+1;
ask=input('Enter a number between 1 and 10:');
else
else
guess=input('Enter a number between 1 and 10:');
end
total=total+1;
end
end
##### 1 CommentoMostra -1 commenti meno recentiNascondi -1 commenti meno recenti
Fangjun Jiang il 13 Ott 2011

Accedi per commentare.

### Risposta accettata

bym il 13 Ott 2011
I didn't know where to start, so look at this. I tried to preserve your code as much as possible

clc;clear
number=1+round(rand*(9));
guess = 0;
total=0;
while guess~=number
if(guess<1 || guess>10);
disp('Invalid')
% removed elseif case here based on Fangjun's comment
else
disp('incorrect, guess again');
end
total=total+1;
guess = input('Enter a number between 1 and 10:');
end
fprintf('You guessed the correct number %g in %g attempts\n',guess,total);
##### 5 CommentiMostra 3 commenti meno recentiNascondi 3 commenti meno recenti
Sean il 13 Ott 2011
Thank you for your help. I really appreciate it.
Fangjun Jiang il 13 Ott 2011
One more challenge, as of now, it always display 'Invalid' at the beginning. How to eliminate that message or any other invalid message?

Accedi per commentare.

### Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by