How can I solve this question?

1 view (last 30 days)
Emma Swaggy
Emma Swaggy on 21 May 2017
Commented: Walter Roberson on 20 Jul 2021
/Write a code that will calculate randomly a number between 1 and 10 (without displaying it) and will ask the user to guess it. If the user answers correctly, the program prints “Good” and add 1 to his score, if not, the program prints “sorry”, gives the correct answer, then selects another number. After 10 consecutive games, the programs stops and prints the final score.
Hint: use a random buitin function (rand).
your guess? 7
Sorry, answer was 5
your guess? 6
Sorry, answer was 0
your guess? 3
Sorry, answer was 1
your guess? 9
Sorry, answer was 0
..
your guess? 1
Sorry, answer was 5
your final score is 0
  4 Comments
Krishna Maity
Krishna Maity on 20 Jul 2021
A particle travels across a at surface, moving due cast for 3 m, then due north for 9 m, and then returns to the origin. A force field acts on the particle, given by
F(x,y)=sin(²+²)+In(7+xy) j
Find the work done on the particle by F.
Please solve this using MATLAB.

Sign in to comment.

Answers (2)

Image Analyst
Image Analyst on 21 May 2017
Hints:
  1. randi() to generate an integer.
  2. input() or inputdlg() to ask the user for a number.
  3. fprintf() or msgbox() to display a message.
  4. "while" to loop until the user gets the correct answer.
  4 Comments
Thomas Nguyen
Thomas Nguyen on 7 Apr 2018
Edited: Image Analyst on 8 Apr 2018
@ImageAnalyst: rand(r) returns a rxr matrix of random numbers from 0:1, not a random number from 1:10.
Although I guess you did tell her to finish it :w
Image Analyst
Image Analyst on 8 Apr 2018
Edited: Image Analyst on 8 Apr 2018
I had rand(1) in the code, but I should have put randi(10) like I said in the message. Thanks for the catch.

Sign in to comment.


Thomas Nguyen
Thomas Nguyen on 7 Apr 2018
Code:
function[] = guessingGame()
prompt_right=('Good job, you guessed correctly'); %msg display when player guessed right
count=0; %score
for i=1:10 %creating a loop to run the question 10 times
inp=input('Your guess? '); %taking player's guess
a=randi(5); %1st random factor for equation 'answer'
b=randi(5); %2nd random factor for equation 'answer'
answer=ceil((a+b)*rand); %equation to calculate a random number between 1 and 10
if inp==answer
disp(prompt_right);
count=count+1; %increase score by one if guessed correctly
else
prompt_wrong=['Sorry, the answer was ',num2str(answer)]; %msg display when player guessed wrong
disp(prompt_wrong);
end
end
prompt_final=['Congratz on finnishing the game! Your final score is: ',num2str(count)]; %msg display when the game is over
disp(prompt_final);
end%guessingGame()
Press F5 in your script editor or run guessingGame in the Command Window to run the code

Categories

Find more on Get Started with MATLAB 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!