Faça um programa que receba a hora de início de um jogo e a hora final do jogo (cada hora é composto por duas variáveis inteiras:hora e minuto).Calcule e mostre a duração do jogo (horas e minutos) sabendo-se que o tempo máximo de duração do jogo é de 24 horas e que o jogo pode iniciar em um dia e terminar no dia seguinte.
esse é o códico que um colega me ajudou:
#include <iostream>
using namespace std;
int CalculaTempo(int tempoInicial, int tempoFinal){
int tempoDecorrido = 0;
if(tempoInicial < tempoFinal){
tempoDecorrido = tempoFinal - tempoInicial;
}else{
tempoDecorrido = tempoInicial-1440 - (tempoFinal);
}
if(tempoDecorrido < 0){
tempoDecorrido = tempoDecorrido * (-1);
}
return tempoDecorrido;
}
int main(){
int horaInicial;
int minutoInicial;
int horaFinal;
int minutoFinal;
int tempoResultado = 0;
cout << "Digite a hora inicial: ";
cin >> horaInicial;
cout << "Digite o minuto inicial: ";
cin >> minutoInicial;
cout << endl << "Digite a hora final: ";
cin >> horaFinal;
cout << "Digite o minuto final: ";
cin >> minutoFinal;
tempoResultado = CalculaTempo((horaInicial*60)+minutoInicial, (horaFinal*60)+minutoFinal);
int horaResultado;
int minutoResultado = 0;
if(tempoResultado >= 60){
horaResultado = tempoResultado/60;
minutoResultado = tempoResultado%60;
}else{
horaResultado = 0;
minutoResultado = tempoResultado;
}
cout << endl << endl << "O tempo total foi de: " << horaResultado << " horas e " << minutoResultado << " minutos." << endl << endl;
return 0;
}
Pergunta
Rômulo_SD
Faça um programa que receba a hora de início de um jogo e a hora final do jogo (cada hora é composto por duas variáveis inteiras:hora e minuto).Calcule e mostre a duração do jogo (horas e minutos) sabendo-se que o tempo máximo de duração do jogo é de 24 horas e que o jogo pode iniciar em um dia e terminar no dia seguinte.
esse é o códico que um colega me ajudou:
#include <iostream> using namespace std; int CalculaTempo(int tempoInicial, int tempoFinal){ int tempoDecorrido = 0; if(tempoInicial < tempoFinal){ tempoDecorrido = tempoFinal - tempoInicial; }else{ tempoDecorrido = tempoInicial-1440 - (tempoFinal); } if(tempoDecorrido < 0){ tempoDecorrido = tempoDecorrido * (-1); } return tempoDecorrido; } int main(){ int horaInicial; int minutoInicial; int horaFinal; int minutoFinal; int tempoResultado = 0; cout << "Digite a hora inicial: "; cin >> horaInicial; cout << "Digite o minuto inicial: "; cin >> minutoInicial; cout << endl << "Digite a hora final: "; cin >> horaFinal; cout << "Digite o minuto final: "; cin >> minutoFinal; tempoResultado = CalculaTempo((horaInicial*60)+minutoInicial, (horaFinal*60)+minutoFinal); int horaResultado; int minutoResultado = 0; if(tempoResultado >= 60){ horaResultado = tempoResultado/60; minutoResultado = tempoResultado%60; }else{ horaResultado = 0; minutoResultado = tempoResultado; } cout << endl << endl << "O tempo total foi de: " << horaResultado << " horas e " << minutoResultado << " minutos." << endl << endl; return 0; }tem algum outro jeito de fazer?
Editado por kuroiAdicionar tag CODE
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.