/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
 */
package repaso7.Examen.Ejercicio1;

/**
 *
 * @author mario
 */
public class Termostato {

    //ATRIBUTOS
    private double temperaturaActual, temperaturaObjetiva;     //ENCAPSULACIÓN [private]

    //CONSTRUCTOR
    public Termostato(double temperaturaActual, double temperaturaObjetiva) {
        if (rangoValido(temperaturaActual)) {
            this.temperaturaActual = temperaturaActual;
        } else {
            this.temperaturaActual = 0;
        }

        if (rangoValido(temperaturaObjetiva)) {
            this.temperaturaObjetiva = temperaturaObjetiva;
        } else {
            this.temperaturaObjetiva = 0;
        }
    }

    //MÉTODOS
    public void subirGrados() {
        if (rangoValido(this.temperaturaActual + 1)) {
            this.temperaturaActual = this.temperaturaActual + 1;
        }//Sino no hago nada
    }

    public void bajarGrados() {
        if (rangoValido(this.temperaturaActual - 1)) {
            this.temperaturaActual = this.temperaturaActual - 1;
        }
    }
    
    public void mostrarTemperatura(){
        System.out.println("Mostrando temperatura: "+this.temperaturaActual);
    }
    
    public boolean estaEnRango(){
        return this.temperaturaActual==this.temperaturaObjetiva;
    }

    private boolean rangoValido(double temperatura) {
        return temperatura >= 0 && temperatura <= 50;
    }

}
