Fazer um programa em que solicita do usuário um tempo em segundos, correspondente à duração de um evento qualquer. Calcular e mostrar ao usuário o tempo equivalente em horas, minutos e segundos.

Passo 1

Beleza, vamos resolver um exercício de programação em C! A gente precisa fazer um programa que pede para o usuário digitar um tempo em segundos, que representa a duração de algum evento. Depois, o programa vai calcular e mostrar esse tempo de forma mais fácil de entender: em horas, minutos e segundos. Para isso, vamos precisar entender como converter segundos em horas e minutos usando divisões e restos.

Passo 2

Primeiro, vamos pedir para o usuário digitar o tempo em segundos. Em C, a gente usa a função printf para mostrar mensagens na tela e a função scanf para receber entrada do usuário. Vamos declarar uma variável para armazenar esses segundos. Por exemplo:
int totalSegundos;
printf("Digite o tempo em segundos: ");
scanf("%d", &totalSegundos);

Passo 3

Agora, vamos converter esses segundos em horas, minutos e segundos. Sabemos que:
  • 1 hora tem 3600 segundos
  • 1 minuto tem 60 segundos
Primeiro, vamos calcular quantas horas tem nos segundos totais. Para isso, dividimos o total de segundos por 3600. O resultado inteiro dessa divisão será o número de horas.
int horas = totalSegundos / 3600;

Passo 4

Depois de obter as horas, precisamos calcular quantos minutos restam. Para isso, pegamos o resto da divisão dos segundos totais por 3600 e dividimos esse resto por 60.
int minutos = (totalSegundos % 3600) / 60;

Passo 5

Por fim, os segundos que restarem após retirar as horas e os minutos serão os segundos finais.
int segundos = totalSegundos % 60;

Passo 6

Agora, vamos mostrar o resultado para o usuário de forma clara.
printf("Tempo equivalente: %d hora(s), %d minuto(s) e %d segundo(s)", horas, minutos, segundos);

Resposta

Aqui está o programa completo em C que realiza a tarefa descrita:
#include <stdio.h>

int main() {
    int totalSegundos, horas, minutos, segundos;

    // Solicita ao usuário o tempo em segundos
    printf("Digite o tempo em segundos: ");
    scanf("%d", &totalSegundos);

    // Calcula horas
    horas = totalSegundos / 3600;

    // Calcula minutos
    minutos = (totalSegundos % 3600) / 60;

    // Calcula segundos
    segundos = totalSegundos % 60;

    // Mostra o resultado
    printf("Tempo equivalente: %d hora(s), %d minuto(s) e %d segundo(s)\n", horas, minutos, segundos);

    return 0;
}
Como funciona o programa:
  1. Entrada de Dados: O usuário digita o tempo em segundos.
  2. Cálculo das Horas: Divide os segundos totais por 3600 para obter o número de horas.
  3. Cálculo dos Minutos: Usa o resto da divisão anterior e divide por 60 para obter os minutos.
  4. Cálculo dos Segundos: Usa o resto da divisão por 60 para obter os segundos restantes.
  5. Saída de Dados: Mostra o tempo convertido em horas, minutos e segundos.
Exemplo de Execução:
Digite o tempo em segundos: 3665
Tempo equivalente: 1 hora(s), 1 minuto(s) e 5 segundo(s)
Isso significa que 3665 segundos correspondem a 1 hora, 1 minuto e 5 segundos.

Exercícios relacionados

Para a apresentação do trabalho, incluir na tela inicial uma opção de login e senha de um usuário já cadastrado (administrador). Também já deverão estar cadastradas pelo menos 3 eleições, com 2 , 5 e 10 candidatos, respectivamente, e pelo menos 10 eleitores em cada. Pelo menos um eleitor deverá estar cadastrado somente em uma das eleições.
Cadastro de candidatos: deve ser possível cadastrar um novo candidato fornecendo seu número identificador, nome e descrição.
Faça um programa para calcular a quantidade de lâmpadas 60 watts necessárias para um determinado cômodo. O programa deverá ler o tamanho em metros quadrados do cômodo e informar a quantidade lâmpadas, sabendo que são necessários 15 watts para se ter uma boa luminosidade.
Zeca está organizando um bolão de futebol. Segundo suas regras, os apostadores informam o placar do jogo e um palpite. Ganham 10 pontos se acertarem o vencedor ou se acertarem que foi empate, e ganham mais 5 pontos para o placar de cada time que acertarem. A tabela a seguir dá um exemplo, considerando que o placar real foi 3x2:
Placar apostado Pontos Razão
0 Não acertou o vencedor e nem o número de gols dos times.
5 Não acertou o vencedor, mas acertou o número de gols do segundo time.
5 Não acertou o vencedor, mas acertou o número de gols do primeiro time.
10 Acertou o vencedor, mas não acertou o número de gols dos times.
15 Acertou o vencedor e o número de gols do primeiro time.
20 Acertou o vencedor e o número de gols de ambos os times.
15)Escreva um programa em que requisita do usuário o placar apostado e depois o placar do jogo e informa quantos pontos o apostador fez.