Boa tarde senhores(as),
Um desafio e tanto os numeros primos, segue solução.
package desafio;
import java.util.Arrays;
import java.util.List;
public class Carro {
private String modelo;
private double[] precos = new double[3];
public void definirModelo(String modelo) {
this.modelo = modelo;
}
public void definirPrecos(double ano1, double ano2, double ano3) {
precos[0] = ano1;
precos[1] = ano2;
precos[2] = ano3;
}
public double pegaMaiorPreco(){
return Arrays.stream(precos).max().getAsDouble();
}
public double pegaMenorPreco(){
return Arrays.stream(precos).min().getAsDouble();
}
public void exibeInformacoes(){
System.out.println("Modelo: " + modelo);
for (int i = 0; i < precos.length; i++) {
int ano = i + 1;
System.out.println("Preço do ano " + ano + ": " + precos[i]);
}
System.out.println("Menor preço: " + pegaMenorPreco());
System.out.println("Maior preço: " + pegaMaiorPreco());
}
}
package desafio;
public class ModeloCarro extends Carro {
}
package desafio;
public class Animal {
public void emitirSom(){}
}
package desafio;
public class Cachorro extends Animal{
@Override
public void emitirSom() {
System.out.println("Cachorro latindo...");
}
public void abanarRabo(){
System.out.println("Abanando rabo...");
}
}
package desafio;
public class Gato extends Animal{
@Override
public void emitirSom() {
System.out.println("Gato miando...");
}
public void arranharMoveis(){
System.out.println("Gato arranhando movéis...");
}
}
package desafio;
public class ContaBancaria {
private String titular;
protected double saldo;
public String getTitular() {
return this.titular;
}
public void setTitular(String titular) {
this.titular = titular;
}
public double getSaldo() {
return this.saldo;
}
public void depositar(double valor) {
this.saldo += valor;
System.out.println("Depósito de R$" + valor + " realizado com sucesso, Saldo atual: " + this.saldo);
}
public void sacar(double valor) {
if(this.saldo >= valor) {
this.saldo -= valor;
System.out.println("Saque de R$" + valor + " realizado com sucesso, Saldo atual: " + this.saldo);
} else {
System.out.println("Saque não permitido, Saldo insuficiente!");
}
}
public void consultarSaldo() {
System.out.println("Saldo: " + this.getSaldo());
}
}
package desafio;
public class ContaCorrente extends ContaBancaria {
public void cobrarTarifaMensal(double tarifa){
this.saldo -= tarifa;
System.out.println("Tarifa mensalizada de R$" + tarifa +" realizada com sucesso, Saldo atual: " + this.getSaldo());
}
}
package desafio;
public class Main {
public static void main(String[] args) {
System.out.println("1. Criando Carro a partir do ModeloCarro\n");
ModeloCarro carro = new ModeloCarro();
carro.definirModelo("Onix");
carro.definirPrecos(19950, 25000, 17250.90);
carro.exibeInformacoes();
System.out.println("\n2. Criando Animal a partir da classe Cachorro e Gato\n");
System.out.println("Cachorro:");
Cachorro cachorro = new Cachorro();
cachorro.emitirSom();
cachorro.abanarRabo();
System.out.println("\nGato:");
Gato gato = new Gato();
gato.emitirSom();
gato.arranharMoveis();
System.out.println("\n3. Criando Conta Bancaria a partir de Conta Correte\n");
System.out.println("Conta:");
ContaCorrente corrente = new ContaCorrente();
corrente.setTitular("Aldeny Júnior");
corrente.depositar(1000);
corrente.sacar(500);
corrente.cobrarTarifaMensal(29.90);
corrente.consultarSaldo();