int minutosTotais = 500;
int horas = minutosTotais / 60;
int minutosRestantes = horas * 60;
int minutos = minutosTotais - minutosRestantes;
Console.WriteLine($"{horas} horas e {minutos} minutos");
int minutosTotais = 500;
int horas = minutosTotais / 60;
int minutosRestantes = horas * 60;
int minutos = minutosTotais - minutosRestantes;
Console.WriteLine($"{horas} horas e {minutos} minutos");
Olá, Rafael, como vai?
O raciocínio geral do seu código está no caminho certo, você utilizou corretamente variáveis inteiras e a divisão por 60 para obter as horas completas, o que atende bem ao objetivo do exercício.
Há apenas um ponto que merece ajuste. No cálculo dos minutos restantes, você utilizou a quantidade de horas para multiplicar por 60 e depois subtrair do total. Isso funciona matematicamente, mas acaba tornando o código mais indireto e pode gerar confusão em leituras futuras. Em C#, existe uma forma mais direta e comum de obter o restante da divisão, utilizando o operador de módulo.
Por exemplo, mantendo sua lógica, o cálculo poderia ser feito diretamente a partir do total de minutos. Usando o operador %, você obtém exatamente os minutos que não completam uma hora. Algo como minutosTotais % 60 deixa o código mais claro e alinhado com a proposta do exercício.
Com essa pequena melhoria, a saída continuará correta, como no caso de 500 minutos resultando em 8 horas e 20 minutos, e o código fica mais legível e simples de manter.
Obrigado por compartilhar sua solução. O fórum fica à disposição para dúvidas ou exercícios que queira discutir.