Problème en avec tableau
yuri
-
djleop -
djleop -
Bonjour, voici mon programme qui calcule le nombre de jour passé depuis sa naissance , jusqu'à aujourd'hui. je dois le refaire en utilisant un tableau d'entier qui comprend le nombre de jour pour chaque mois!
je bloque vraiment donc si quelqu'un peut m'aidez! merci
#include <stdio.h>
#include <stdlib.h>
void main (void)
{
int total,totalnaissance,totaljour,datenaissance,moisnaissance,anneenaissance,datejour,moisjour,anneejour;
printf("entrez date de naissance:");
scanf("%d",&datenaissance);
printf("entrez mois de naissance:");
scanf("%d",&moisnaissance);
printf("entrez annee de naissance:");
scanf("%d",&anneenaissance);
printf("entrez date du jour:");
scanf("%d",&datejour);
printf("entrez mois du jour:");
scanf("%d",&moisjour);
printf("entrez annee du jour:");
scanf("%d",&anneejour);
/* totaljour= (anneejour*365) + datejour + (moisjour*totalmois ) */
if (mois == 1)
{
totalmois= 31;
}
else
if (mois == 2)
{
totalmois= 59;
}
else
if (mois == 3)
{
totalmois= 90;
}
else
if (mois == 4)
{
totalmois= 120;
}
else
if (mois == 5)
{
totalmois= 151;
}
else
if (mois == 6 )
{
totalmois= 181;
}
else
if (mois == 7)
{
totalmois= 212;
}
else
if (mois == 8)
{
totalmois= 243;
}
else
if (mois == 9)
{
totalmois= 273;
}
else
if (mois == 10)
{
totalmois= 304;
}
else
if (mois == 11)
{
totalmois= 334;
}
else
if (mois == 12)
{
totalmois= 365;
}
/* totalnaissance= (anneenaissance*365) + datenaissance + (moisnaissance*totalmois ) */
if (mois == 1)
{
totalmois= 31;
}
else
if (mois == 2)
{
totalmois= 59;
}
else
if (mois == 3)
{
totalmois= 90;
}
else
if (mois == 4)
{
totalmois= 120;
}
else
if (mois == 5)
{
totalmois= 151;
}
else
if (mois == 6 )
{
totalmois= 181;
}
else
if (mois == 7)
{
totalmois= 212;
}
else
if (mois == 8)
{
totalmois= 243;
}
else
if (mois == 9)
{
totalmois= 273;
}
else
if (mois == 10)
{
totalmois= 304;
}
else
if (mois == 11)
{
totalmois= 334;
}
else
if (mois == 12)
{
totalmois= 365;
}
/* total = totaljour - totalnaissance */
printf(" vous avez %d jour,total");
}
je bloque vraiment donc si quelqu'un peut m'aidez! merci
#include <stdio.h>
#include <stdlib.h>
void main (void)
{
int total,totalnaissance,totaljour,datenaissance,moisnaissance,anneenaissance,datejour,moisjour,anneejour;
printf("entrez date de naissance:");
scanf("%d",&datenaissance);
printf("entrez mois de naissance:");
scanf("%d",&moisnaissance);
printf("entrez annee de naissance:");
scanf("%d",&anneenaissance);
printf("entrez date du jour:");
scanf("%d",&datejour);
printf("entrez mois du jour:");
scanf("%d",&moisjour);
printf("entrez annee du jour:");
scanf("%d",&anneejour);
/* totaljour= (anneejour*365) + datejour + (moisjour*totalmois ) */
if (mois == 1)
{
totalmois= 31;
}
else
if (mois == 2)
{
totalmois= 59;
}
else
if (mois == 3)
{
totalmois= 90;
}
else
if (mois == 4)
{
totalmois= 120;
}
else
if (mois == 5)
{
totalmois= 151;
}
else
if (mois == 6 )
{
totalmois= 181;
}
else
if (mois == 7)
{
totalmois= 212;
}
else
if (mois == 8)
{
totalmois= 243;
}
else
if (mois == 9)
{
totalmois= 273;
}
else
if (mois == 10)
{
totalmois= 304;
}
else
if (mois == 11)
{
totalmois= 334;
}
else
if (mois == 12)
{
totalmois= 365;
}
/* totalnaissance= (anneenaissance*365) + datenaissance + (moisnaissance*totalmois ) */
if (mois == 1)
{
totalmois= 31;
}
else
if (mois == 2)
{
totalmois= 59;
}
else
if (mois == 3)
{
totalmois= 90;
}
else
if (mois == 4)
{
totalmois= 120;
}
else
if (mois == 5)
{
totalmois= 151;
}
else
if (mois == 6 )
{
totalmois= 181;
}
else
if (mois == 7)
{
totalmois= 212;
}
else
if (mois == 8)
{
totalmois= 243;
}
else
if (mois == 9)
{
totalmois= 273;
}
else
if (mois == 10)
{
totalmois= 304;
}
else
if (mois == 11)
{
totalmois= 334;
}
else
if (mois == 12)
{
totalmois= 365;
}
/* total = totaljour - totalnaissance */
printf(" vous avez %d jour,total");
}
A voir également:
- Problème en avec tableau
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide
1 réponse
Bonjour,
Je pense qu'il est necessaire de revoir le code.
La logique de calcul doit être dfférente !
il faut d'abord determiner combien d'année depuis la date de naissance. Ca doit être assez simple.
Ensuite, calcul du nombre de mois :
nombre de mois = 12*(nombre d'année-1);
nombre de mois = nombre de mois + numéro de mois d'aujourd'hui
et pour le nombre de jour, en grossier on multipie le nombre de mois par 30.
Sinon, un tableau ou on stocke le nombre de jour pour chaque mois (28 pour Février). Ce qui donne un nombre de jour plus précis.
Pour calculer le nombre exact .... A voir des librairies spéciales de C++, je ne connais pas trop.
Je pense qu'il est necessaire de revoir le code.
La logique de calcul doit être dfférente !
il faut d'abord determiner combien d'année depuis la date de naissance. Ca doit être assez simple.
Ensuite, calcul du nombre de mois :
nombre de mois = 12*(nombre d'année-1);
nombre de mois = nombre de mois + numéro de mois d'aujourd'hui
et pour le nombre de jour, en grossier on multipie le nombre de mois par 30.
Sinon, un tableau ou on stocke le nombre de jour pour chaque mois (28 pour Février). Ce qui donne un nombre de jour plus précis.
Pour calculer le nombre exact .... A voir des librairies spéciales de C++, je ne connais pas trop.