// 03

// SUPERCLASSE
/*class Notas{
    constructor(
        public nota1: number,
        public nota2: number,
        public nota3: number,
    ){}
}

// CLASSE DERIVADA
class Aluno extends Notas{
    public media: number;
    public resultado: string;

    constructor(
        public nome_aluno: string,
        public idade: number,
        nota1: number,
        nota2: number,
        nota3: number
    ){
        super(nota1, nota2, nota3);
        this.calcular_media();
        this.verificar_resultado();
    }

    private calcular_media(){
        this.media = (this.nota1 + this.nota2 + this.nota3) / 3;
    }

    private verificar_resultado(){
        this.resultado = this.media >= 75 ? "Aprovado" : "Reprovado";
    }
    
    imprimir(){
        console.log(`Nome do Aluno: ${this.nome_aluno}`);
        console.log(`Idade: ${this.idade}`);
        console.log(`Nota 1: ${this.nota1}`);
        console.log(`Nota 2: ${this.nota2}`);
        console.log(`Nota 3: ${this.nota3}`);
        console.log(`Média: ${this.media.toFixed(2)}`);
        console.log(`Resultado: ${this.resultado}`);
    }
}

let a = new Aluno("João da Silva Sauro", 15, 80, 70, 85);

//CHAMAR O MÉTODO IMPRIMIR
a.imprimir();*/


// 04
// SUPERCLASSE
class Financeira{
    constructor(public percentual_lucro: number){}
}

class Banco extends Financeira{
    public lucro: number;

    constructor(
        public nome_cliente: string,
        public cpf: string,
        public capital_aplicado: number,
        percentual_lucro: number
    ){
        super(percentual_lucro);
        this.calcular_lucro();
    }

    private calcular_lucro(){
        this.lucro = this.capital_aplicado * (this.percentual_lucro / 100);
    }

    imprimir(){
        console.log(`Nome do Cliente: ${this.nome_cliente}`);
        console.log(`CPF: ${this.cpf}`);
        console.log(`Capital Aplicado: ${this.capital_aplicado}`);
        console.log(`Lucro: ${this.lucro.toFixed(2)}`);
    }
}

// OBJETO
let b = new Banco(
    "Maria Oliveira",
    "333.555.777-99",
    10000,
    5
);

// CHAMAR O MÉTODO IMPRIMIR
b.imprimir();






Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: