1
resposta

Desafio: hora da prática - Resolucao

//1-
using (HttpClient client = new HttpClient())
{
    string respostaAPI = await client.GetStringAsync("https://www.cheapshark.com/api/1.0/deals");
    Console.WriteLine(respostaAPI);
}
//2-
int a;
int b;
int cont = 0;

Console.WriteLine("Digite 2 numero para serem divididos: ");
do
{
    try
    {
        cont++;
        Console.WriteLine("Qual o n: ");
        a = int.Parse(Console.ReadLine()!);
        Console.WriteLine("Qual o n: ");
        b = int.Parse(Console.ReadLine()!);
        
        int div = a / b;
        Console.WriteLine($"A divisou foi: {div}");

    }
    catch (Exception ex)
    {
        Console.WriteLine("O que foi digitado nao e um numero. Tente novamente");
    }
    
}while ( cont < 1);
//3-
List<int> ints = new List<int> {1,2,3,4,5,6};

try
{
    Console.WriteLine(ints[7]);

}
catch (Exception ex)
{


    Console.WriteLine("Item da lista não existe!!!");
}
//4-
HoraPratica4_ teste = new HoraPratica4_();

try
{
    teste = null;
    teste.TesteNullo();

}
catch
{
    Console.WriteLine("nao ha nada dentro do metodo");
}
1 resposta

Olá, Ulysses! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de HttpClient para consumir dados de uma API, utilizou muito bem blocos try/catch para tratar exceções em diferentes cenários e ainda compreendeu a importância de validar entradas e acessos a listas para evitar erros em tempo de execução.

Uma sugestão para o futuro seria refinar as mensagens de erro, diferenciando os tipos de exceção para dar feedback mais específico ao usuário. Assim:

try
{
    int div = a / b;
    Console.WriteLine($"A divisão foi: {div}");
}
catch (FormatException)
{
    Console.WriteLine("Entrada inválida. Digite apenas números.");
}
catch (DivideByZeroException)
{
    Console.WriteLine("Não é possível dividir por zero.");
}
catch (Exception ex)
{
    Console.WriteLine($"Erro inesperado: {ex.Message}");
}

Isso faz com que o programa seja mais informativo e ajude o usuário a entender melhor o que ocorreu.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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