Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

[Projeto] C# Desafio: hora da prática 2.0

Exericio 1: Fiz todo nesse estilo de menu etc, mas o site nao esta me permitindo adicionar tudo pois o código ficou com quase 6mil caracter, sei que futuramente vou aprenser a criar uma classe onde vai me ensinar a diminuir muito o tamanho do meu código, mas estou aberta para sugestões, atualmente meu conheciento só em permitiu criar algo simples com muitos caracteres, mas sei que futuramente irei escrever algo simples com menos repetição.

MenuPrincipal();
void MenuPrincipal()
{
    Console.WriteLine("Calculadora Básica");
    Console.WriteLine("Digite 1 para somar");
    Console.WriteLine("Digite 2 para subtrair");
    Console.WriteLine("Digite 3 para multiplicar");
    Console.WriteLine("Digite 4 para dividir");
    Console.WriteLine("Digite 5 para todas as operações");
    Console.WriteLine("Digite 9 para sair");
    Console.Write("Opção Escolhida:  ");
    int OpcaoEscolhida = int.Parse(Console.ReadLine()!);
    switch (OpcaoEscolhida)
    {
        case 1:ExibirSomar();
            break;
        case 2:ExibirSubtrair();
            break;
        case 3: ExibirMultiplicar();
            break;
        case 4: ExibirDividir();
            break;
        case 5: ExibirTodas();
            break;
        case 9:
            Console.WriteLine("Obrigada pela preferência, Fica com Deus!");
            break;
        default:
            Console.WriteLine("Opção Inválida!");
            break;
    }
}
void ExibirTodas()
{
    Console.Write("Digite o primeiro número:");
    String primeiroNumero = Console.ReadLine()!;
    Console.Write("Digite o segundo número:");
    String segundoNumero = Console.ReadLine()!;
    Console.ForegroundColor = ConsoleColor.Yellow;
    Console.WriteLine("\nSó um momento, estamos calculando os resultados...");
    Console.ResetColor();
    Thread.Sleep(3000);
    Console.Clear();
    float a = float.Parse(primeiroNumero);
    float b = float.Parse(segundoNumero);
    Console.ForegroundColor = ConsoleColor.Blue;
    Console.WriteLine($"\nO resultado da soma de {a}+{b} é: {a + b}");
    Console.WriteLine($"\nO resultado da subtração de {a}-{b} é: {a - b}");
    Console.WriteLine($"\nO resultado da multiplicação de {a}*{b} é: {a * b}");
    Console.WriteLine($"\nO resultado da divisão de {a}/{b} é: {a / b}");
    Console.ResetColor();
    Console.WriteLine("\nPressione qualquer tecla para voltar ao menu principal");
    Console.ReadKey();
    Console.Clear();
    MenuPrincipal();
}

Exercicio 2 e 3

List<string> listaDeCantorFav = new List<string>{"Delacruz", "L7NONN", "Djonga"};
for (int i = 0; i < listaDeCantorFav.Count; i++)
{
    Console.WriteLine($"Cantor: {listaDeCantorFav[i]}");
}

Exercicio 4

List<int> ListaNumerica = new List<int> { 1, 7, 9, 15, 6, 34};
    Console.WriteLine($"A soma é: {ListaNumerica[0] + ListaNumerica[1] + ListaNumerica[2] + ListaNumerica[3]+ ListaNumerica[4] + ListaNumerica[5]}");
1 resposta
solução!

Olá, Emili! Como vai?

Parabéns pela resolução da atividade!

Vi que você explorou a estrutura de menu com switch para organizar operações em C#, utilizou muito bem a lista com for para percorrer elementos e ainda compreendeu a importância da coleção List para armazenar valores e manipular dados de forma prática.

Uma dica interessante para o futuro é encapsular as operações matemáticas em métodos separados, reduzindo a repetição e deixando o código mais limpo. Assim:

static float Somar(float a, float b) => a + b;
static float Subtrair(float a, float b) => a - b;
static float Multiplicar(float a, float b) => a * b;
static float Dividir(float a, float b) => a / b;

Isso faz com que você chame funções específicas dentro do menu, diminuindo bastante o tamanho do código e facilitando futuras alterações.

Se quiser aprofundar ainda mais, algumas boas práticas são:

  • Usar loops para somar listas: evitar escrever cada índice manualmente.
  • Adicionar tratamento de erros: como divisão por zero ou entradas inválidas.
  • Criar uma classe Calculadora: centralizar todas as operações em um único lugar.

Continue postando as suas soluções! Além de ganhar pontos de XP na plataforma, você pode ajudar outros estudantes no fórum.

Ah, uma pergunta: você acha mais interessante evoluir este código criando uma classe Calculadora para centralizar as operações ou aplicar loops para reduzir a repetição nas somas de listas?

Abraço e bons estudos!

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