Dart: Convertir un número entero a horas y minutos
En este problema tenemos que convertir un número entero dado a horas y minutos separados por dos puntos. Por ejemplo si el número dado es 68 entonces el resultado es 1:8
Ejemplos
Entrada: 128
Salida: 2:8
Entrada: 35
Salida: 0:35
Solución
Este problema es muy sencillo. Si dividimos entre 60 obtenemos el número de horas. Por lo que podemos utilizar
la división con resultado entero ~/
:
Por ejemplo el resultado de 128 ~/ 60
son 2 horas. Y para obtener los minutos podemos utilizar el módulo %
. El
resultado del módulo es el residuo de la división por lo que 128 % 60
son 8 minutos.
Se puede ver más claro en la siguiente imagen:
Entonces la solución final quedara asi:
void main() {
int num = 128;
print('${(num ~/ 60)}:${num % 60}');
}