Conversion de secondes en jours, heures, minutes, secondes

Soyez le premier à donner votre avis sur cette source.

Vue 14 790 fois - Téléchargée 351 fois

Description

(codé en cours)
c'est un programme tout bete, qui vous demande un nombre de secondes, et qui va le convertir en nombre de jours, heures, minutes, et secondes.

PS: vu que ce prog a été codé en cours, il est largement commenté et relativement clair, donc je pense que vous n'aurez pas de mal a le comprendre.

le fichier source est ds le zip si vous avez des pbs

Source / Exemple :


#include <stdio.h>

int main(void){
	int n,		/* n : durée donnée en secondes */
	    r,		/* r : le reste du modulo */
	    a;		/* a : la quantité de jours, heures, minutes ou secondes */

	printf("Donnez une durée en secondes : ");
	scanf("%d", &n);	/* la durée en seconde est entrée */
	
	if (n>0){
	
	printf("Cette durée correspond à :\n");
	
	
	
	/* 1 jour = 24*60*60 = 86400 secondes */
	
	r=n%86400;		/* on calcul le reste */
	a=(n-r)/86400;
	if (a != 0){
		if (a==1)
			printf("%d jour\n", a);
		else
			printf("%d jours\n", a);
		}
	

	n=r;			/* on ne retient que les secondes restantes */
	r=n%3600;		/* on calcul le reste */
	a=(n-r)/3600;
	if (a != 0){
		if (a==1)
			printf("%d heure\n", a);
		else
			printf("%d heures\n", a);
		}
		
	
	n=r;		/* on ne retient que les secondes restantes */
	r=n%60;		/* on calcul le reste */
	a=(n-r)/60;
	if (a != 0){
		if (a==1)
			printf("%d minute\n", a);
		else
			printf("%d minutes\n", a);
		}

	/* r contient le reste des secondes */
	
	a=r;		/* on donne le reste des secondes */
	if (a != 0){
		if (a==1)
			printf("%d seconde\n", a);
		else
			printf("%d secondes\n", a);
		}
	}
	else
	printf("erreur : nombre négatif !!!!!\n");
	
	return 0;
}

Conclusion :


by Kortal (coder@kortal.cjb.net)
[ http://kortal.cjb.net ]

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

#include<stdio.h>
main()
{
int n,r,a;
printf("Entrez le temps en secondes");
scanf("%d",&n);
r=n%3600;
a=(n-r)/3600;
if(a>=1)
printf("%d Heure",a);
else printf("%d",a);
n=r;
r=n%60;
a=(n-r)/60;
if(a>=1)printf("%d Minutes",a);
else printf("%d Minutes",a);
a=r;
if (a>=0)
printf("%d secondes",a);
else printf("%d secondes",a);

}
Pk tu mets %i.... Mets just %d et sa marcheras
Une autre méthode simple :
#include<stdio.h>
main()
{
int n,r,a;
printf("Entrez le temps en secondes");
scanf("%d",&n);
r=n%3600;
a=(n-r)/3600;
if(a>=1)
printf("%d Heure",a);
else printf("%d",a);
n=r;
r=n%60;
a=(n-r)/60;
if(a>=1)printf("%d Minutes",a);
else printf("%d Minutes",a);
a=r;
if (a>=0)
printf("%d secondes",a);
else printf("%d secondes",a);

}
Messages postés
1
Date d'inscription
mercredi 27 décembre 2006
Statut
Membre
Dernière intervention
8 octobre 2007

salut nebgizer
ca se que j'ai fait, la meme idée de faire
sec = totalsec % 60;
totalmin = totalsec / 60;
min = totalmin % 60;
heure = totalmin / 60;
printf("%i heures, %i minutes , %i secondes",heure,min,sec);

mais j'arrive pa à le compiler car je trouv des erreurs
tu px me donné la methode complete ?
Messages postés
8
Date d'inscription
dimanche 8 décembre 2002
Statut
Membre
Dernière intervention
26 juin 2003

lol :D
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.