MATLAB Answers

0

Im programming a mini game and i wanted help with how to rank based on time

Asked by nty huy on 23 Oct 2019
Latest activity Answered by Katie
on 24 Oct 2019
i wanted to rank the player based on time say 10 second is first, 20 seconds is second and so on, what code can i use for that if anyone can help

  0 Comments

Sign in to comment.

1 Answer

Answer by Katie
on 24 Oct 2019

Hi! If you're just storing time as number of seconds, you can use the sort function. Here's a quick example to illustrate:
times=[10, 55, 62, 12, 15];
[OrderedTimes ind]=sort(times);
%outputs are as follows:
%OrderedTimes=[10 12 15 55 62];
%ind=[1 4 5 2 3];
You could also store your times as datetime objects and do the same:
datestrings={'00:00:10','00:00:55','00:01:02','00:00:12','00:00:15'};
times1=datetime(datestrings,'InputFormat','HH:mm:ss');
[OrderedTimes1 ind1]=sort(times1);
In both cases, the "ind" variable output from the sort function will give you the indicies you need to pull out any other player info you need for the ranking (e.g., the player name of the second place winner could be found with names(ind(2)) )

  0 Comments

Sign in to comment.