Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Proyecto] Desafio: Construyendo una nueva aplicación

Simulador de Calentamiento

import java.util.Scanner;

public class Desafio {
    public static void main(String[] args) {

        Scanner teclado = new Scanner(System.in);

        // Entradas de Usuario
        System.out.println("Temperatura Inicial (°C)");
        double tempInicial = teclado.nextDouble();

        System.out.println("Temperatura final deseada (°C)");
        double tempFinal = teclado.nextDouble();

        System.out.println("Incremento por Ciclo (°C)");
        double incremento = teclado.nextDouble();

        System.out.println("Temperatura máxima segura (°C)");
        double tempMaxSegura = teclado.nextDouble();

        double tempActual = tempInicial;
        int ciclo = 1;

        System.out.println("***Iniciando Simulación de Calentamiento***");

        // Bucle Calentamiento
        while (tempActual < tempFinal) {

            //Verificar limites seguros
            if (tempActual >= tempMaxSegura) {
                System.out.println("ALERTA : Temperatura fuera de los limites seguros");
                break;
            }

            //incremento de temp
            tempActual +=incremento;
            ciclo++;
        }

        //Resultados

        System.out.println("***Fin de la Simulación***");
        if (tempActual >=tempMaxSegura) {
            System.out.println("Proceso detenido por sobrecalentamiento");
        }else {
            System.out.println("Calentamiento completado con exito");
        }

        //Mostrar tabla
        System.out.println("***Registro de temperaturas esperadas por ciclo:");
        for (int i = 1; i <= ciclo ; i++) {
            double valor = tempInicial + incremento * (i - 1);
            System.out.println("Ciclo " + i + ": " + valor + " °C");
        }
    }
}
1 respuesta

¡Hola Estudiante, espero que estés bien!

Tu código para el simulador de calentamiento parece estar muy bien estructurado. Sin embargo, si estás buscando alguna mejora o tienes algún problema específico, aquí tienes algunas sugerencias:

  1. Validación de entradas: Sería útil agregar validaciones para las entradas del usuario. Por ejemplo, asegurarte de que la temperatura inicial no sea mayor que la final, o que el incremento no sea negativo.

  2. Formato de salida: Si deseas mejorar la legibilidad de la salida, podrías formatear los números decimales para que tengan un número fijo de decimales, usando String.format o System.out.printf.

  3. Ciclo de calentamiento: Asegúrate de que el incremento sea lo suficientemente pequeño para no sobrepasar la temperatura final en un solo ciclo, lo que podría causar que el bucle no se ejecute como esperas.

Aquí tienes un ejemplo de cómo podrías implementar la validación de entrada para asegurarte de que la temperatura inicial no sea mayor que la final:

if (tempInicial >= tempFinal) {
    System.out.println("Error: La temperatura inicial debe ser menor que la temperatura final.");
    return;
}

Y para formatear la salida de los ciclos:

System.out.printf("Ciclo %d: %.2f °C%n", i, valor);

Espero que estas sugerencias te ayuden a mejorar tu aplicación. ¡Bons estudios!