1
resposta

[Projeto] Resolução - Classe Funcionário

Classe Funcionário:

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)
    {
        Console.WriteLine($"Funcionário: {Nome}");
        Console.WriteLine($"Cargo Atual: {Cargo}");
        if(Cargo == novoCargo)
        {
            Console.WriteLine("Erro: O novo cargo deve ser diferente do cargo atual.");
        }
        else
        {
            Console.WriteLine($"""
                Promoção realizada com sucesso!
                Funcionário {Nome} 
                Promovido para {novoCargo}
                """);
        }
    }

}

Instância:

Funcionario funcionario1 = new Funcionario("Tauane", "Analista");
funcionario1.Promover("Gerente");
1 resposta

Oi, Tauane! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Seu código ficou muito bem estruturado e demonstra boa compreensão dos conceitos de classes e métodos em C#. O método Promover mostra claramente como aplicar lógica condicional para validar uma promoção de cargo — ótimo exemplo de encapsulamento e clareza.

Uma dica interessante para o futuro é usar o método ToUpper() para comparar strings sem se preocupar com letras maiúsculas ou minúsculas. Veja este exemplo:


string cargoAtual = "Analista";
string novoCargo = "gerente";

if (cargoAtual.ToUpper() == novoCargo.ToUpper())
{
    Console.WriteLine("Erro: O novo cargo deve ser diferente do atual.");
}

Esse código compara os textos de forma insensível a maiúsculas/minúsculas, evitando erros por diferenças de digitação.

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