29 lines
960 B
MonkeyC
29 lines
960 B
MonkeyC
// Целочисленное форматирование — без Float (дробное деление Monkey C
|
||
// даёт Float, который рисуется с десятичной частью на MIP-экране).
|
||
class Format {
|
||
// q = floor(a / b); a ≥ 0, b > 0
|
||
function div(a, b) {
|
||
var q = 0;
|
||
while (a >= b) {
|
||
a -= b;
|
||
q += 1;
|
||
}
|
||
return q;
|
||
}
|
||
|
||
// «m:ss» / «mm:ss» из миллисекунд, округление вниз до секунд.
|
||
// Конкатенация — со строки: «число + строка» в Monkey C не склеивается
|
||
function mmss(ms) {
|
||
if (ms == null || ms < 0) {
|
||
ms = 0;
|
||
}
|
||
var sec = div(ms, 1000);
|
||
var min = div(sec, 60);
|
||
var s = sec - min * 60;
|
||
if (s < 10) {
|
||
return "" + min + ":0" + s;
|
||
}
|
||
return "" + min + ":" + s;
|
||
}
|
||
}
|