Azzera filtri
Azzera filtri

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

1 visualizzazione (ultimi 30 giorni)
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

Risposte (1)

Katie
Katie il 24 Ott 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)) )

Categorie

Scopri di più su Just for fun 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