1
resposta

Gerenciamento de funcionários

class Funcionario
{
    public Funcionario(string nome, string cargo)
    {
        Nome = nome;
        Cargo = cargo;
    }

    public string Nome { get; }
    public string Cargo { get; set; }

    public void Promover(string novoCargo)
    {
        if(Cargo != novoCargo)
        {
            Cargo = novoCargo;
            Console.WriteLine("Promoção realizada com sucesso!\n");
            Console.WriteLine("--- Após promoção ---");
            Console.WriteLine($"Funcionário: {Nome}");
            Console.WriteLine($"Cargo Atual: {Cargo}");
        } else
        {
            Console.WriteLine("Erro: O novo cargo deve ser diferente do cargo atual.\n");
        }
    }
}
Funcionario funcionario = new Funcionario("Maria Oliveira", "Analista de Sistemas");
Console.WriteLine($"Funcionário: {funcionario.Nome}");
Console.WriteLine($"Cargo Atual: {funcionario.Cargo}\n");

funcionario.Promover("Analista de Sistemas");
funcionario.Promover("Desenvolvedora Sênior");
1 resposta

Ei, Mateus! Como vai?

Seu exemplo ficou bem organizado e a lógica do Promover mostra de forma clara quando o cargo deve ou não ser atualizado. Parabéns pela dedicação na atividade, isso é muito importante para consolidar seus conhecimentos.

Uma dica para praticar é usar ToUpper() para comparar textos sem depender de maiúsculas ou minúsculas. Veja este exemplo:


string cargoAtual = "Analista";
string novoCargo = "analista";

if(cargoAtual.ToUpper() == novoCargo.ToUpper()){
    Console.WriteLine("Os cargos sao iguais.");
}

Esse código converte as duas strings e evita divergências por diferença de letras.

Continue se dedicando aos estudos e qualquer dúvida, compartilhe.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!