Division entiere et modulo pour trouver temps
Résolu
Maxianos
Messages postés
55
Date d'inscription
Statut
Membre
Dernière intervention
-
Maxianos Messages postés 55 Date d'inscription Statut Membre Dernière intervention -
Maxianos Messages postés 55 Date d'inscription Statut Membre Dernière intervention -
Bonjour, je vous explique mon probleme..
Je sais qu'il y a deja bcp de question sur ce sujet, mais pas exactement sur mon probleme.
Alors, j'ai des formules pour calculer le temps qu'un projectile lancé a une vitesse (V) et parcourant uen distance (D) passera dans les airs... Pour ca pas de probleme et cette formule me donne le temps en seconde..
Or, je dois afficher a la fin de mon programme le temps sous cette forme : Année, mois, jour, heure, minute, seconde.
Comme si la reponse de ma formule me donnais 3672 secones, je devrais obtenir :
0 années, 0 mois, 0 jour, 1 heure, 1 minute et 12 secondes...
Merci pour votre aide...
Je programme en C++ si sa peux vous aider, mais pour l'instant je ne dois faire que l'analyse, et non la programmation complete...
Je sais qu'il y a deja bcp de question sur ce sujet, mais pas exactement sur mon probleme.
Alors, j'ai des formules pour calculer le temps qu'un projectile lancé a une vitesse (V) et parcourant uen distance (D) passera dans les airs... Pour ca pas de probleme et cette formule me donne le temps en seconde..
Or, je dois afficher a la fin de mon programme le temps sous cette forme : Année, mois, jour, heure, minute, seconde.
Comme si la reponse de ma formule me donnais 3672 secones, je devrais obtenir :
0 années, 0 mois, 0 jour, 1 heure, 1 minute et 12 secondes...
Merci pour votre aide...
Je programme en C++ si sa peux vous aider, mais pour l'instant je ne dois faire que l'analyse, et non la programmation complete...
A voir également:
- Division entiere et modulo pour trouver temps
- Trouver adresse mac - Guide
- Capture d'écran page entière - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Temps pour soi iphone - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
4 réponses
Salut,
Je te conseille d'utiliser un tableau puisqu'il s'agit un problème de retenu.
Un tableau de 6 cases fera l'affaire (secondes, minutes, heures, jours, mois années).
Ensuite, soit X le nombre en secondes.
Tu fais une boucle sur chacun des indices du tableau, en commençant par les secondes.
tableau[i] <- X mod NB
X <- X div NB
i <- i + 1
NB vaut 60 pour les secondes, minutes, mais 24 pour les heures, etc. (Tu peux encore utiliser un autre tableau pour plus d'élégance).
Et ensuite t'affiches le tableau ;)
Je te laisse réfléchir dessus. Je pense que tu as suffisamment d'informations pour réussir l'algorithme ;)
Cdlt
Je te conseille d'utiliser un tableau puisqu'il s'agit un problème de retenu.
Un tableau de 6 cases fera l'affaire (secondes, minutes, heures, jours, mois années).
Ensuite, soit X le nombre en secondes.
Tu fais une boucle sur chacun des indices du tableau, en commençant par les secondes.
tableau[i] <- X mod NB
X <- X div NB
i <- i + 1
NB vaut 60 pour les secondes, minutes, mais 24 pour les heures, etc. (Tu peux encore utiliser un autre tableau pour plus d'élégance).
Et ensuite t'affiches le tableau ;)
Je te laisse réfléchir dessus. Je pense que tu as suffisamment d'informations pour réussir l'algorithme ;)
Cdlt
Ouais ok, mais j'suis pas rendu tres loin en programmation et le professeur nous a dit qu'on devais faire ca qu'avec ce qu'on avait vu dans le cours (et on a pas vu grand chose a part les operations elementaire et quelques code)..
Il nous a donc dit : Pour faire ce calcul vous devez utiliser la division entière et le
modulo à répétition sur le temps total qui est calculé en secondes. Vous
n'avez pas besoin d'itération pour y parvenir.
C'est seulement que je ne sais pas comment transofrmé la réponse de seconde au format mentionné plus haut..
Il nous a donc dit : Pour faire ce calcul vous devez utiliser la division entière et le
modulo à répétition sur le temps total qui est calculé en secondes. Vous
n'avez pas besoin d'itération pour y parvenir.
C'est seulement que je ne sais pas comment transofrmé la réponse de seconde au format mentionné plus haut..