class funcionario.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Metadata.Ecma335;
using System.Text;
using System.Threading.Tasks;
namespace bytebank_ADM.Funcionarios
{
public class Funcionario
{
public string Nome { get; set; }
public string Cpf { get; set; }
public double Salario { get; set; }
public virtual double GetBonificacao()
{
return this.Salario * 0.10;
}
public virtual double GetPremiacaoSemestral()
{
return this.Salario * 0.20;
}
}
}
classe diretor.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bytebank_ADM.Funcionarios
{
public class Diretor: Funcionario
{
public override double GetBonificacao()
{
return this.Salario + base.GetBonificacao();
}
public override double GetPremiacaoSemestral()
{
return base.GetPremiacaoSemestral();
}
}
}
class gerenciadorDEBonificaçao.cs
using bytebank_ADM.Funcionarios;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bytebank_ADM.Utilitario
{
public class GerenciadorDeBonificacao
{
public double TotalDeBonificacao { get; private set; }
public void Registrar(Funcionario funcionario)
{
this.TotalDeBonificacao += funcionario.GetBonificacao();
this.TotalDeBonificacao += funcionario.GetPremiacaoSemestral();
}
}
}
program.cs
using bytebank_ADM.Funcionarios;
using bytebank_ADM.Utilitario;
Funcionario pedro = new Funcionario();
pedro.Nome = "Pedro Pedrone";
pedro.Cpf = "32165498701";
pedro.Salario = 2000;
Console.WriteLine("Nome: " + pedro.Nome);
Console.WriteLine("Bonificacao " + pedro.GetBonificacao());
Console.WriteLine("A Premiaçao Semetral é " + pedro.GetPremiacaoSemestral());
Diretor roberta = new Diretor();
roberta.Nome = "Roberta Silva";
roberta.Cpf = "1234567890x";
roberta.Salario = 5000;
Console.WriteLine("Nome: " + roberta.Nome);
Console.WriteLine("Bonificação: " + roberta.GetBonificacao());
Console.WriteLine("Premiacao Semetral é " + roberta.GetPremiacaoSemestral());
GerenciadorDeBonificacao gerenciador = new GerenciadorDeBonificacao();
gerenciador.Registrar(pedro);
gerenciador.Registrar(roberta);
Console.WriteLine("Total de bonificações: " + gerenciador.TotalDeBonificacao);
Console.WriteLine();
Console.WriteLine("Pressione enter para Sair ");
Console.ReadLine();