Reto Convertir segundos en días, horas, minutos y segundos en Java

 
 
 
 

Hola querido lector, si eres de los que me suele seguir en mis redes sociales, te habrás dado cuenta que me gusta escribir algoritmos, y resolver retos y katas en mi tiempo libre, suelo emplear Java, ya que es un lenguaje de programación multiplataforma, y que sirve para multitud de propósito. Java se basa principalmente en el paradigma de orientación a objetos, si eres principiante y no sabes por dónde empezar, sin lugar a duda, te recomiendo que vayas a mi curso de Java en Youtube.

Hoy les traigo una pequeña kata en la cual me lo he inventado yo, y consiste básicamente en una aplicación que pide un número de segundos (número entero), y el programa se va a encargar de convertirlo en días, horas, minutos y segundos.

Ha sido un programa facilito, básicamente se basa en que 24 horas son 86400 segundos, las horas son 3600 segundos, y los minutos son 60 segundos, a partir de aquí, empleando la división y resto prácticamente se puede hacer el programa.

public class TimeConverter {

    public static void main(String[] args) {
        // Ejemplo de uso: convertimos 100000 segundos
        long totalSeconds = 100000;
        convertSeconds(totalSeconds);
    }

    public static void convertSeconds(long totalSeconds) {
        // Constantes para las conversiones
        final int SECONDS_IN_A_MINUTE = 60;
        final int SECONDS_IN_AN_HOUR = 60 * SECONDS_IN_A_MINUTE;
        final int SECONDS_IN_A_DAY = 24 * SECONDS_IN_AN_HOUR;

        // Cálculos
        long days = totalSeconds / SECONDS_IN_A_DAY;
        long hours = (totalSeconds % SECONDS_IN_A_DAY) / SECONDS_IN_AN_HOUR;
        long minutes = (totalSeconds % SECONDS_IN_AN_HOUR) / SECONDS_IN_A_MINUTE;
        long seconds = totalSeconds % SECONDS_IN_A_MINUTE;

        // Imprimir resultados
        System.out.println("Total segundos: " + totalSeconds);
        System.out.println("Días: " + days);
        System.out.println("Horas: " + hours);
        System.out.println("Minutos: " + minutes);
        System.out.println("Segundos: " + seconds);
    }
}

Bueno, espero que os haya gustado mi código, que lo estudiéis, si queréis más contenido como éste puedes seguirme en mi página en Facebook o en mi twitter, no tengo nada más que decir, hasta la próxima, chao 😉

Deja un comentario

Información básica sobre protección de datos Ver más

  • Responsable: Tomas Gonzalez.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

error: Content is protected !!

Descubre más desde InfoGonzalez - Blog de formador e informático

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo

Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad
Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.