Affichage heure

chirita -  
 chirita -
Bonjour, je ne comprends pas pourquoi mon code ne marche pas avec de grand nombre. Il sert calculer en jour, heure, minutes, seconde, le nombre de seconde qu'on a rentré. Pour les petites valeurs, le résultat est juste mais pour de grande valeur, les heures et minutes sont fausses. J'ai fait ceci :

#include <iostream>

using namespace std;

int main()
{

    int nbTotalSecondes, nbTotalMinutes, nbTotalHeures, nbTotalJours;
    int nbSecondes, nbMinutes, nbHeures, nbJours;

    cin >> nbTotalSecondes;


   nbTotalMinutes = nbTotalSecondes / 60;
   nbMinutes = nbTotalMinutes % 60;

   nbTotalHeures = nbTotalMinutes / 60;
   nbHeures = nbTotalHeures % 60;

   nbTotalJours = nbTotalHeures / 24;
   nbJours = nbTotalJours % 24;

   nbSecondes = nbTotalSecondes % 60;

cout << nbTotalJours << " jours, ";
cout << nbTotalHeures << " heures, ";
cout << nbTotalMinutes << " minutes et ";
cout << nbSecondes << " secondes";


    return 0;
}


Merci bien

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
Dans ton affichage tu dois faire :

cout << nbTotalJours << " jours, ";
cout << nbHeures << " heures, ";
cout << nbMinutes << " minutes et ";
cout << nbSecondes << " secondes" << endl;

Mais avant tu dois corriger cette erreur de calcul :
nbHeures = nbTotalHeures % 24;

Remarque : nbJours est inutile
0
chirita
 
Salut KX, décidement :D

Merci beaucoup, je progresse de jour en jour avec de ton aide :)
0