1
resposta

[Projeto] Resposta sistema de recompensas

Console.WriteLine("Digite o código de recompensa (DOBRAR, CURAR, OURO, ESPECIAL)");
string cupom = Console.ReadLine();

string recompensa;

recompensa = cupom switch
{
    "DOBRAR" => "Ganhar 2x EXP por 1 hora desbloqueado!",
    "CURAR" => "Poção de cura desbloqueado!",
    "OURO" => "1000 moedas de outro desbloqueado!",
    "ESPECIAL" => "Item lendário desbloqueado!",
    _ => "Recompensa indisponível desbloqueado!",
};

Console.WriteLine(recompensa);
1 resposta

Oi, Murilo! Como vai?

Achei interessante como você utilizou o switch de forma direta para associar cada cupom à sua recompensa. Isso deixa o código mais limpo e fácil de manter, especialmente em atividades de sistemas de recompensas.

Uma dica interessante para o futuro é que você também pode usar o ToUpper() para garantir que o input do usuário seja tratado sem problemas de caixa, evitando que "dobrar" ou "DOBRAR" causem respostas diferentes:


Console.WriteLine("Digite o codigo de recompensa (DOBRAR, CURAR, OURO, ESPECIAL)");
string cupom = Console.ReadLine().ToUpper();

string recompensa = cupom switch
{
    "DOBRAR" => "Ganhar 2x EXP por 1 hora desbloqueado!",
    "CURAR" => "Pocao de cura desbloqueado!",
    "OURO" => "1000 moedas de ouro desbloqueado!",
    "ESPECIAL" => "Item lendario desbloqueado!",
    _ => "Recompensa indisponivel desbloqueado!",
};

Console.WriteLine(recompensa);

Este código converte o input do usuário para maiúsculas, evitando que letras minúsculas causem erro.

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