1
resposta

Minha resolução

int minutos = 250;
int horas = minutos / 60;
int resto = minutos % 60;
Console.WriteLine($"{minutos} minutos equivalem a {horas} horas e {resto } minutos");

1 resposta

Olá, Isac! Tudo bem?

Excelente resolução! Você aplicou com precisão dois conceitos fundamentais da aritmética na programação: a divisão inteira e o operador de módulo (%).

Análise da sua Lógica

  • Divisão Inteira: Como você definiu a variável horas como int, o C# descarta automaticamente as casas decimais do resultado de minutos / 60. Isso é perfeito para extrair apenas a parte "cheia" do tempo.
  • Operador de Resto (Módulo): O uso de minutos % 60 é a forma mais eficiente de descobrir quantos minutos sobraram após contabilizarmos as horas completas. É um recurso essencial para algoritmos de conversão de tempo e medidas.
  • Clareza na Saída: A interpolação de strings deixou a mensagem final muito legível e profissional.

Dica de Desafio: O Próximo Nível

Para continuar praticando, que tal tentar converter um valor total de segundos para o formato Horas : Minutos : Segundos?

Você precisaria de um passo extra:

  1. Calcular o total de horas.
  2. Pegar o que sobrou (resto) e transformar em minutos.
  3. O que sobrar desse segundo cálculo seriam os segundos finais.

O raciocínio seria algo como:

int totalSegundos = 3665;
int h = totalSegundos / 3600;
int m = (totalSegundos % 3600) / 60;
int s = totalSegundos % 60;

Isac, sua evolução no C# está bem consistente! Você sentiu que o uso do operador % foi intuitivo ou precisou de um tempo para entender como ele calcula o resto da divisão?