Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Desafio5

1.ConversorMoeda:

public interface ConversaoFinanceira {
    double converterDolarParaReal(double valorEmDolar);
}

public class ConversorMoeda implements ConversaoFinanceira {
    @Override
    public double converterDolarParaReal(double valorEmDolar) {
        // Supondo uma taxa de conversão fixa
        double taxaDeCambio = 5.0; // 1 dólar = 5 reais
        return valorEmDolar * taxaDeCambio;
    }
}

public class ConversorMoedaTeste {
    public static void main(String[] args) {
        ConversorMoeda conversor = new ConversorMoeda();
        double valorEmReais = conversor.converterDolarParaReal(100); // Convertendo 100 dólares
        System.out.println("Valor em reais: " + valorEmReais);
    }
}

2.CalculadoraSalaRetangular:

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

public class CalculadoraSalaRetangular implements CalculoGeometrico {
    @Override
    public double calcularArea(double altura, double largura) {
        return altura * largura;
    }

    @Override
    public double calcularPerimetro(double altura, double largura) {
        return 2 * (altura + largura);
    }
}

public class CalculadoraSalaRetangularTeste {
    public static void main(String[] args) {
        CalculadoraSalaRetangular calculadora = new CalculadoraSalaRetangular();
        double altura = 5;
        double largura = 3;
        System.out.println("Área da sala: " + calculadora.calcularArea(altura, largura));
        System.out.println("Perímetro da sala: " + calculadora.calcularPerimetro(altura, largura));
    }
}

3.Tabuada:

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

public class TabuadaMultiplicacao implements Tabuada {
    @Override
    public void mostrarTabuada(int numero) {
        for (int i = 1; i <= 10; i++) {
            System.out.println(numero + " x " + i + " = " + (numero * i));
        }
    }
}

public class TabuadaMultiplicacaoTeste {
    public static void main(String[] args) {
        TabuadaMultiplicacao tabuada = new TabuadaMultiplicacao();
        tabuada.mostrarTabuada(7); // Exibir tabuada do 7
    }
}

4.ConversorTemperatura:

public interface ConversorTemperatura {
    double celsiusParaFahrenheit(double celsius);
    double fahrenheitParaCelsius(double fahrenheit);
}

public class ConversorTemperaturaPadrao implements ConversorTemperatura {
    @Override
    public double celsiusParaFahrenheit(double celsius) {
        return (celsius * 9 / 5) + 32;
    }

    @Override
    public double fahrenheitParaCelsius(double fahrenheit) {
        return (fahrenheit - 32) * 5 / 9;
    }
}

public class ConversorTemperaturaPadraoTeste {
    public static void main(String[] args) {
        ConversorTemperaturaPadrao conversor = new ConversorTemperaturaPadrao();
        double celsius = 25;
        double fahrenheit = conversor.celsiusParaFahrenheit(celsius);
        System.out.println(celsius + "°C em Fahrenheit: " + fahrenheit);

        fahrenheit = 77;
        celsius = conversor.fahrenheitParaCelsius(fahrenheit);
        System.out.println(fahrenheit + "°F em Celsius: " + celsius);
    }
}

5.Calculavel:

public interface Calculavel {
    double calcularPrecoFinal();
}

public class Livro implements Calculavel {
    private double preco;

    public Livro(double preco) {
        this.preco = preco;
    }

    @Override
    public double calcularPrecoFinal() {
        // Lógica de cálculo do preço final para livro
        return this.preco * 0.9; // Desconto de 10%
    }
}

public class ProdutoFisico implements Calculavel {
    private double preco;

    public ProdutoFisico(double preco) {
        this.preco = preco;
    }

    @Override
    public double calcularPrecoFinal() {
        // Lógica de cálculo do preço final para produto físico
        return this.preco * 1.1; // Taxa adicional de 10%
    }
}

public class CalculavelTeste {
    public static void main(String[] args) {
        Livro livro = new Livro(50);
        System.out.println("Preço final do livro: " + livro.calcularPrecoFinal());

        ProdutoFisico produto = new ProdutoFisico(100);
        System.out.println("Preço final do produto físico: " + produto.calcularPrecoFinal());
    }
}
2 respostas

6.Vendavel:

public interface Vendavel {
    double calcularPrecoTotal(int quantidade);
    void aplicarDesconto(double desconto);
}

public class Produto implements Vendavel {
    private double preco;

    public Produto(double preco) {
        this.preco = preco;
    }

    @Override
    public double calcularPrecoTotal(int quantidade) {
        return this.preco * quantidade;
    }

    @Override
    public void aplicarDesconto(double desconto) {
        this.preco -= this.preco * (desconto / 100);
    }
}

public class Servico implements Vendavel {
    private double precoPorHora;

    public Servico(double precoPorHora) {
        this.precoPorHora = precoPorHora;
    }

    @Override
    public double calcularPrecoTotal(int quantidade) {
        // Por simplicidade, consideramos que o preço total é o preço por hora multiplicado pela quantidade de horas
        return this.precoPorHora * quantidade;
    }

    @Override
    public void aplicarDesconto(double desconto) {
        // Serviços não podem ter desconto direto
        System.out.println("Desconto não aplicável para serviços.");
    }
}

public class VendavelTeste {
    public static void main(String[] args) {
        Produto produto = new Produto(50);
        produto.aplicarDesconto(10); // Aplicando desconto de 10%
        System.out.println("Preço final do produto após desconto: " + produto.calcularPrecoTotal(5));
        
        Servico servico = new Servico(20);
        System.out.println("Preço total do serviço: " + servico.calcularPrecoTotal(3));
    }
}
solução!

Olá Samil, tudo bem com você?

Já te respondi em outros posts do Fórum e é ótimo ver seu empenho e dedicação nos estudos. Obrigado por compartilhar seu resultado com a comunidade.

Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!