Java - Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 5 puestos en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Diego (3 intervenciones) el 19/11/2018 17:55:04
Hola, tengo un ejercicio que se supone que es muy simple pero estoy empezando en esto de java y no se muy bien como conseguir la salida del programa. El ejercicio es el siguiente:

El programa recibe del usuario la capacidad en litros de un cubo, sabiendo que 1 mililitro son 20 gotas y que tenemos una gotera que cae a 1 gota por segundo, calcula el tiempo en el que se llena el cubo
La salida es: numero de horas+minutos+segundos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
sin imagen de perfil
Val: 755
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Yamil Bracho (2315 intervenciones) el 19/11/2018 18:18:11
1) Lleva de lts a Mililitros (1Lts = 1000 Mlts)
2) Lleva de Milimitros obteneidos en (2) a gotas sabiendo que 1 ml = 20 gotas
3) Calcula el numero de segs de (2) sabiendo que cae una gota por seg
4) Te resulta el numero de segundos para los lts dados y alli llevas a Horas, minuto sy segundos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 8
Ha aumentado su posición en 5 puestos en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Diego (3 intervenciones) el 19/11/2018 18:59:52
voy a ver si siguiendo los pasos me sale porque llevo un buen rato jajajaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Billy Joel (876 intervenciones) el 19/11/2018 18:51:55
Primero hagamos algo de matemáticas:
1 Hora = 3600 Segundos
1 Hora = 60 Segundos
1 Minuto = 60 Segundos
1 Litro = 1000 Mililitros
1 gota = 1 Segundo

Entonces para llenar 1 litro sería
1L = 1000ML * 20 Segundos/ML
1L = 20,000 Segundos

Entonces
20,000 Segundos / 3600 = 5 Horas (5 X 3600 = 18,000 | 20,000 - 18,000 = 2,000)
2,000 Segundos / 60 = 33 Minutos (33 X = 60 = 1,980 | 2,000 - 1,980 = 20)
20 Segundos

Entonces en Java lo resolvemos así
1
2
3
4
5
6
7
public String getTimeToFillCube(int capacityInLitres){
    long segundos = 20000 * capacityInLitres;
    int horas = Double.valueOf(segundos/3600.0).intValue();
    int minutos = Double.valueOf((segundos % 3600)/60.0).intValue();
    int segundosx = Double.valueOf((segundos % 3600)%60.0).intValue();
    return (horas < 10 ? "0" + horas : horas) + ":" + (minutos < 10 ? "0" + minutos : minutos) + ":" + (segundosx < 10 ? "0" + segundosx : segundosx);
}

Saludos!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 8
Ha aumentado su posición en 5 puestos en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Diego (3 intervenciones) el 19/11/2018 18:59:17
Creo que tu lo has hecho con POO pero aun asi gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ayuda con un ejercicio simple sobre la capacidad en litros de un cubo

Publicado por Billy Joel (876 intervenciones) el 19/11/2018 19:11:53
Lo que he hecho es un método que recibe por parámetro la capacidad que debería ingresar el usuaro.
Te dejo la tarea de capturar la capacidad que ingresa el usuario
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class Gotero {
 
    public String getTimeToFillCube(int capacityInLitres) {
        long segundos = 20000 * capacityInLitres;
        int horas = Double.valueOf(segundos / 3600.0).intValue();
        int minutos = Double.valueOf((segundos % 3600) / 60.0).intValue();
        int segundosx = Double.valueOf((segundos % 3600) % 60.0).intValue();
        return (horas < 10 ? "0" + horas : horas) + ":" + (minutos < 10 ? "0" + minutos : minutos) + ":" + (segundosx < 10 ? "0" + segundosx : segundosx);
    }
 
    public static void main(String[] args) {
        Gotero g = new Gotero();
        System.out.println(g.getTimeToFillCube(1));
    }
}

;-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar