1
resposta

[Projeto] Desafios resolvidos dos exercicios: 1, 2, 3 e 4

Crie uma classe ConversorMoeda que implementa uma interface ConversaoFinanceira com o método converterDolarParaReal() para converter um valor em dólar para reais. A classe deve receber o valor em dólar como parâmetro.

package desafio;

public class ConversorMoeda implements ConversaoFinanceira {

    @Override
    public void converterDolarParaReal(double valorDolar) {
        if (valorDolar <= 0){
            System.out.println("Valor invalido, voce deve informar um valor maior que zero");
        } else {
            double valorConvertido = valorDolar * COTACAO_REAL;
            System.out.println("O valor do dolar $" + valorDolar + " convertido em reais é R$" + valorConvertido);
        }
    }
}
package desafio;

public interface ConversaoFinanceira {
    double COTACAO_REAL = 5.23;
    void converterDolarParaReal(double valorDolar);
}

Crie uma classe CalculadoraSalaRetangular que implementa uma interface CalculoGeometrico com os métodos calcularArea() e calcularPerimetro() para calcular a área e o perímetro de uma sala retangular. A classe deve receber altura e largura como parâmetros.

package desafio;

public class CalculadoraSalaRetangular implements CalculoGeometrico{

    @Override
    public void calcularArea(double altura, double largura) {
        double calculoArea = altura * largura;
        System.out.println("""
                Área = %.2f x %.2f = %.2f m²""".formatted(altura, largura, calculoArea));
    }

    @Override
    public void calcularPerimetro(double comprimento, double largura) {
        double calculoPerimetro = 2 * (comprimento + largura);
        System.out.println("""
                Perimetro = %.2f x %.2f = %.2f m""".formatted(comprimento, largura, calculoPerimetro));
    }
}
package desafio;

public interface CalculoGeometrico {
    void calcularArea(double altura, double largura);
    void calcularPerimetro(double comprimento, double largura);
}

Crie uma classe TabuadaMultiplicacao que implementa uma interface Tabuada com o método mostrarTabuada() para exibir a tabuada de um número. A classe deve receber o número como parâmetro.

package desafio;

public class TabuadaMultiplicacao implements Tabuada {
    @Override
    public void mostrarTabuada(int numero) {
        System.out.println("Tabuada de multiplicação do número " + numero + ":");
        for (int i = 1; i <=10 ; i++) {
            int calculo = numero * i;
            System.out.println("""
                    %d x %d = %d""".formatted(numero, i, calculo));
        }
    }
}
package desafio;

public interface Tabuada {
    void mostrarTabuada(int numero);
}

Crie uma interface ConversorTemperatura com os métodos celsiusParaFahrenheit() e fahrenheitParaCelsius(). Implemente uma classe ConversorTemperaturaPadrao que implementa essa interface com as fórmulas de conversão e exibe os resultados.

package desafio;

public interface ConversorTemperatura {
    void celsiusParaFahrenheit(double celsius);
    void fahrenheitParaCelsius(double valor);
}
package desafio;

public class ConversorTemperaturaPadrao implements ConversorTemperatura {

    @Override
    public void celsiusParaFahrenheit(double celsius) {
        double conversao = (celsius * 9/5) + 32;
        System.out.println("""
                A temperatura %.2fºC foi convertida para %.2fºF""".formatted(celsius, conversao));

    }

    @Override
    public void fahrenheitParaCelsius(double fahrenheit) {
        double conversao = (fahrenheit - 32) * 5/9;
        System.out.println("""
                A temperatura %.2fºF foi convertida para %.2fºC""".formatted(fahrenheit, conversao));
    }
}
package desafio;

public class Main {

    public static void main(String[] args) {
        ConversorMoeda conversor = new ConversorMoeda();
        conversor.converterDolarParaReal(3.75);
        System.out.println();

        CalculadoraSalaRetangular calculadora = new CalculadoraSalaRetangular();
        calculadora.calcularArea(5, 20);
        calculadora.calcularPerimetro(5, 20);
        System.out.println();

        TabuadaMultiplicacao tabuada = new TabuadaMultiplicacao();
        tabuada.mostrarTabuada(12);
        System.out.println();

        ConversorTemperaturaPadrao conversorTemperatura = new ConversorTemperaturaPadrao();
        conversorTemperatura.celsiusParaFahrenheit(32);
        conversorTemperatura.fahrenheitParaCelsius(89.60);        
    }
}
1 resposta

Olá, Aldeny! Como você está?

Meus parabéns pela apresentação da sua resolução dos desafios! É muito gratificante acompanhar o seu desenvolvimento e ver como você aplicou os conceitos de interfaces e implementação em Java de forma tão organizada.

Seu código está muito bem estruturado, com uma separação clara entre as interfaces e as classes que as implementam. Gostei bastante do uso do método .formatted() para exibir os resultados, o que deixa a saída no console bem mais elegante e legível.

Continue com esse empenho e dedicação nos seus estudos de Orientação a Objetos!

Conte sempre com a Alura para evoluir seus estudos. Em caso de dúvidas, estou à disposição.

Bons estudos!

Sucesso

Imagem da comunidade