Write a function that takes a number to be guessed and a player number, and checks if the winning criteria is met.

3 visualizaciones (últimos 30 días)
This is what I have to work with, I've tried some functions already, but they came back as invalid.
i.e.:
win = Numberguess(gameNum, userGuess)
if abs gameNum==userGuess
win=logical 1;
else
win=logial 0;

Respuestas (2)

Davide Masiello
Davide Masiello el 16 de Mzo. de 2022
Editada: Davide Masiello el 16 de Mzo. de 2022
It could be something like this
numberGuess([3,7,12,9,17])
The number to guess was 5. You win!
function numberGuess(input)
if length(input) ~= 5
error('Input must have five elements')
end
gameNum = randi(20,1,1);
if sum(abs(gameNum-input) <= 3) >=2
fprintf('The number to guess was %.0f. You win!\n',gameNum)
else
fprintf('The number to guess was %.0f. Sorry, try again.\n',gameNum)
end
end

Arif Hoq
Arif Hoq el 16 de Mzo. de 2022
trying to find out the nearest minimum and maximum value
userguess=[2 5 10 17 19];
gamenum=13;
y=NumberGuess(gamenum,userguess);
win = 1
%
function win=NumberGuess(gamenum,userguess)
% userguess=[2 5 12 17 19];
% gamenum=3;
[~,~,idx]=unique(round(abs(userguess-gamenum)));
minVal=userguess(idx==1);
maxVal=userguess(idx==2);
if (gamenum-minVal)<=3
win=1
elseif (maxVal-gamenum)<=3
win=1
else
win=0
end
end

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by