begin process at 2010 03 16 16:39:10
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > CALCUL AGE V2

CALCUL AGE V2


 Information sur la source

 Description

Calcul l'age en fonction des saisies utilisateur (année, mois, jour naissance)
Prend en compte les années bissextiles, les mois à 30 et 31 jours.
Cependant à l'affichage, un mois reste un mois (28, 29, 30 ou 31 peut importe), une année reste une année (365 ou 366 peu importe). J'ai pris cette décision car quand on donne son age, on se moque des années bissextiles.
Quand on dit qu'on a 20 ans et 6 mois, on se moque que les 3 premiers soient de 30 ou 31 jours.
Par ontre si vous voulez comptabiliser le nombre de jours vécus, je vous l'accorde c'est une autre histoire (voir source
Calcul Age, la variable ageT_jours contient cette information).

Source

  • /*
  • TP7 Exercice Facultatif
  • Nom : ERARD
  • Prenom : Stéphane
  • Fichier : main.cpp
  • Date : dim 11 dec 2005
  • */
  • #include <iostream>
  • #include <windows.h>
  • using namespace std;
  • void calculAge(int, int, int, SYSTEMTIME);
  • void AfficherResultats(int, int, int);
  • int retourneNbJoursMois(int, int, SYSTEMTIME);
  • bool estBissextile(int);
  • //rSaisieValide[...] pour recevoirSaisieValide
  • int rSaisieValideAnnee(SYSTEMTIME);
  • int rSaisieValideMois(int, SYSTEMTIME);
  • int rSaisieValideJour(int, int, SYSTEMTIME);
  • int rSaisieValideJours31(int, int, SYSTEMTIME);
  • int rSaisieValideJours30(int, int, SYSTEMTIME);
  • int rSaisieValideJoursBi(int, int, SYSTEMTIME);
  • int main(){
  • int sAnnee, sMois, sJour; //saisies utilisateur
  • SYSTEMTIME st;
  • GetSystemTime(&st);
  • sAnnee = rSaisieValideAnnee(st);
  • sMois = rSaisieValideMois(sAnnee, st);
  • sJour = rSaisieValideJour(sAnnee, sMois, st);
  • calculAge(sAnnee, sMois, sJour, st);
  • return 0;
  • }
  • /* **** FONCTIONS **** */
  • void calculAge(int annee, int mois, int jour, SYSTEMTIME st){
  • int cAnnees=0, cMois=0, cJours=0;
  • if (annee==st.wYear && mois==st.wMonth){
  • cAnnees=0;
  • cMois=0;
  • cJours=st.wDay - jour;
  • }
  • else if (mois==st.wMonth && jour < st.wDay){
  • cAnnees = st.wYear - annee;
  • cMois = 0;
  • cJours = st.wDay - jour;//jour - st.wDay;
  • }
  • else if (mois==st.wMonth && jour > st.wDay){
  • cAnnees=st.wYear - annee;
  • cMois = 0;
  • cJours = st.wDay - jour;
  • }
  • else if (mois==st.wMonth && jour == st.wDay){
  • cAnnees = st.wYear - annee;
  • cMois = 0;
  • cJours = 0;
  • }
  • else if (jour==st.wDay){
  • cAnnees = st.wYear - annee;
  • cMois = st.wMonth - mois;
  • cJours = 0;
  • }
  • else if (annee==st.wYear){
  • cAnnees=0;
  • cMois = mois - st.wMonth + 1;
  • cJours =retourneNbJoursMois(annee, mois, st) - jour;
  • }
  • else {
  • cJours = retourneNbJoursMois(annee, mois, st) - jour;
  • cMois = 12 - mois - 1;
  • cAnnees = st.wYear - annee;
  • }
  • if (cJours < 0){
  • //int nbJoursMaxMois = retourneNbJoursMois(annee, mois, st);
  • int nbJoursMax = retourneNbJoursMois(annee, mois, st);
  • cJours = nbJoursMax + cJours;
  • cMois = cMois - 1;
  • cAnnees -=1;
  • }
  • if (cMois < 0){
  • cMois = 12 + cMois;
  • }
  • AfficherResultats(cAnnees, cMois, cJours);
  • }
  • /* void AfficherResultats(int annees, int mois, int jours){
  • @params: int annee, int mois, int jours
  • @return: void
  • Description: Cette fonction formatte l'affichage des parametres en
  • fonction de ceux-ci.
  • */
  • void AfficherResultats(int annees, int mois, int jours){
  • if (jours == 0){
  • if (mois == 0){
  • if (annees==1)
  • cout << "\nVous avez 1 an! Noyeux Janniversaire !";
  • else
  • cout << "\nVous avez " << annees << " ans!";
  • }
  • else
  • {
  • if (annees==0)
  • cout << "\nVous avez " << mois << " mois!";
  • else if (annees==1)
  • cout << "\nVous avez 1 an et " << mois << " mois!";
  • else
  • cout << "\nVous avez " << annees << " et " << mois << "!";
  • }
  • }
  • else
  • {
  • if (jours == 1){
  • if (mois ==0){
  • if (annees==0)
  • cout << "\nVous avez 1 jour!";
  • else if (annees==1) cout << "\nVous avez 1 an et 1 jour!";
  • else cout << "\nVous avez " << annees << " et 1 jour!";
  • }
  • else
  • {
  • if (annees==0)
  • cout << "\nVous avez " << mois << " mois et 1 jour!";
  • else if (annees==1) cout << "\nVous avez 1 an, " << mois
  • << " mois et 1 jour!";
  • else cout << "\nVous avez " << annees << " ans, " << mois
  • << " mois et 1 jour!";
  • }
  • }
  • else
  • {
  • if (mois==0){
  • if (annees==0)
  • cout << "\nVous avez " << jours << " jours!";
  • else if (annees==1)
  • cout << "\nVous avez 1 an et " << jours << " jours:";
  • else
  • cout << "\nVous avez " << annees << " ans et " << jours
  • << " jours!";
  • }
  • else
  • {
  • if (annees==0)
  • cout << "\nVous avez " << mois << " mois et " << jours
  • << " jours!";
  • else if (annees==1)
  • cout << "\nVous avez 1 an, " << mois << " mois et "
  • << jours << " jours!";
  • else
  • cout << "\nVous avez " << annees << " ans, " << mois
  • << " mois et " << jours << " jours!";
  • }
  • }
  • }
  • }
  • /* int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
  • @params: int annee, int mois
  • @return: int nombre de jours restants dans le mois de l'année spécifiée.
  • Description: Cette fonction a besoin de l'année car si le mois est 2
  • il faut savoir si l'année est bissextile ou pas.
  • */
  • int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
  • switch(mois){
  • case 1: return 31;break;
  • case 2: if (estBissextile(annee)) return 29; else return 28;break;
  • case 3: return 31;break;
  • case 4: return 30;break;
  • case 5: return 31;break;
  • case 6: return 30;break;
  • case 7: return 31;break;
  • case 8: return 31;break;
  • case 9: return 30;break;
  • case 10: return 31;break;
  • case 11: return 30;break;
  • case 12: return 31;break;
  • }
  • }
  • /* bool estBissextile(int annee){
  • @params: int annee
  • @return: bool
  • Description: Si l'année fournit en parametre est bissextile
  • renvoi TRUE, sinon FALSE
  • */
  • bool estBissextile(int annee){
  • //Une année bisextile est une année divisible par 4
  • //sauf si elle est divisible par 100 auquel cas elle doit être divisible par 400.
  • if (annee%100==0 && annee%400==0) return false;
  • else if (annee%4==0) return true;
  • }
  • /* int rSaisieValideAnnee(SYSTEMTIME st)
  • @param: SYSTEMTIME st
  • @return:int annee
  • Description: renvoi une saisie utilisateur valide (l'année ici)
  • */
  • int rSaisieValideAnnee(SYSTEMTIME st){
  • int annee;
  • do {
  • cout << "Veuillez saisir votre annee de naissance (inferieur a " << st.wYear << "):";
  • cin >> annee;
  • }while (!(annee <= st.wYear ));
  • return annee;
  • }
  • /* int rSaisieValideMois(int annee, SYSTEMTIME st)
  • @param: int annee, SYSTEMTIME st
  • @return: int mois
  • Description: renvoi une saisie utilisateur valide (ici le mois)
  • valide dans le sens ou si l'année specifiée avant EST
  • l'année en cours, l'utilisateur ne peut renseigner un mois
  • supérieur au mois actuel
  • */
  • int rSaisieValideMois(int annee, SYSTEMTIME st){
  • int mois;
  • do {
  • cout << "Veuillez saisir votre mois de naissance ";
  • if (annee == st.wYear) cout << "(inferieur a " << st.wMonth << ")";
  • cout << ":";
  • cin >> mois;
  • if (annee==st.wYear && mois > st.wMonth) mois = 13;
  • }while (!(mois<=12 && mois>=1));
  • return mois;
  • }
  • /* int rSaisieValideJour(int annee, int mois, SYSTEMTIME st)
  • @param: int annee, int mois, SYSTEMTIME st
  • @return: int jour
  • Description: renvoi une saisie utilisateur valide (ici le jour)
  • valide dans le sens où la fonction prête attention au nombre de
  • jours dans le mois, et si l'année est bissextile pour le mois de
  • fevrier
  • */
  • int rSaisieValideJour(int annee, int mois, SYSTEMTIME st){
  • int jour=0, limit=0;
  • if (annee == st.wYear && mois == st.wMonth){
  • do{
  • cout << "Veuillez saisir votre jour de naissance (inferieur a " << st.wDay << "):";
  • cin >> jour;
  • }while (!(jour > 0 && jour < st.wDay));
  • }
  • else{
  • switch (mois){
  • //mois à 31
  • case 1:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 3:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 5:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 7:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 8:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 10:jour=rSaisieValideJours31(annee, mois, st);break;
  • case 12:jour=rSaisieValideJours31(annee, mois, st);break;
  • //mois à 30
  • case 4:jour=rSaisieValideJours30(annee, mois, st);break;
  • case 6:jour=rSaisieValideJours30(annee, mois, st);break;
  • case 9:jour=rSaisieValideJours30(annee, mois, st);break;
  • case 11:jour=rSaisieValideJours30(annee, mois, st);break;
  • //mois de fevrier verifie si année bissextile
  • case 2:
  • jour=rSaisieValideJoursBi(annee, mois, st);break;
  • }
  • }
  • return jour;
  • }
  • /* int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st)
  • @param: int annee, int mois, SYSTEMTIME st
  • @return: int jour
  • Description: renvoi une saisie utilisateur valide (ici le jour)
  • comprise entre 1 et 31
  • */
  • int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st){
  • int jour;
  • do {
  • cout << "Veuillez saisir votre jour de naissance (entre 1 et 31):";
  • cin >> jour;
  • }while(!(jour>=1 && jour<=31));
  • return jour;
  • }
  • /* int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st)
  • @param: int annee, int mois, SYSTEMTIME st
  • @return: int jour
  • Description: renvoi une saisie utilisateur valide (ici le jour)
  • comprise entre 1 et 30
  • */
  • int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st){
  • int jour;
  • do {
  • cout << "Veuillez saisir votre jour de naissance (entre 1 et 30):";
  • cin >> jour;
  • }while(!(jour>=1 && jour<=30));
  • return jour;
  • }
  • /* int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st)
  • @param: int annee, int mois, SYSTEMTIME st
  • @return: int jour
  • Description: renvoi une saisie utilisateur valide (ici le jour)
  • comprise entre 1 et 28/29 suivant si année bissextile.
  • */
  • int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st){
  • int jour;
  • if (estBissextile(annee)){
  • do{
  • cout << "Veuillez saisir votre jour de naissance (entre 1 et 29):";
  • cin >> jour;
  • }while(!(jour>=1 && jour<=29));
  • return jour;
  • }
  • else {
  • do{
  • cout << "Veuillez saisir votre jour de naissance (entre 1 et 28):";
  • cin >> jour;
  • }while(!(jour>=1 && jour<=28));
  • return jour;
  • }
  • }
  • /* **** FIN FONCTIONS **** */
/*
TP7 Exercice Facultatif
Nom : ERARD
Prenom : Stéphane
Fichier : main.cpp
Date : dim 11 dec 2005
*/
#include <iostream>
#include <windows.h>
using namespace std;
void calculAge(int, int, int, SYSTEMTIME);
void AfficherResultats(int, int, int);
int retourneNbJoursMois(int, int, SYSTEMTIME);
bool estBissextile(int);
//rSaisieValide[...] pour recevoirSaisieValide
int rSaisieValideAnnee(SYSTEMTIME);
int rSaisieValideMois(int, SYSTEMTIME);
int rSaisieValideJour(int, int, SYSTEMTIME);
int rSaisieValideJours31(int, int, SYSTEMTIME);
int rSaisieValideJours30(int, int, SYSTEMTIME);
int rSaisieValideJoursBi(int, int, SYSTEMTIME);


int main(){
	int sAnnee, sMois, sJour; //saisies utilisateur
	SYSTEMTIME st;

	GetSystemTime(&st);
	sAnnee = rSaisieValideAnnee(st);
	sMois = rSaisieValideMois(sAnnee, st);
	sJour = rSaisieValideJour(sAnnee, sMois, st);

	calculAge(sAnnee, sMois, sJour, st);

	return 0;
}
/* **** FONCTIONS **** */
void calculAge(int annee, int mois, int jour, SYSTEMTIME st){
	int cAnnees=0, cMois=0, cJours=0;
	if (annee==st.wYear && mois==st.wMonth){
		cAnnees=0;
		cMois=0;
		cJours=st.wDay - jour;
	}
	else if (mois==st.wMonth && jour < st.wDay){
		cAnnees = st.wYear - annee;
		cMois = 0;
		cJours = st.wDay - jour;//jour - st.wDay;
	}
	else if (mois==st.wMonth && jour > st.wDay){
		cAnnees=st.wYear - annee;
		cMois = 0;
		cJours = st.wDay - jour;
	}
	else if (mois==st.wMonth && jour == st.wDay){
		cAnnees = st.wYear - annee;
		cMois = 0;
		cJours = 0;
	}
	else if (jour==st.wDay){
		cAnnees = st.wYear - annee;
		cMois = st.wMonth - mois;
		cJours = 0;
	}
	else if (annee==st.wYear){
		cAnnees=0;
		cMois = mois - st.wMonth + 1;
		cJours =retourneNbJoursMois(annee, mois, st) - jour;
	}
	else {
		cJours = retourneNbJoursMois(annee, mois, st) - jour;
		cMois = 12 - mois - 1;
		cAnnees = st.wYear - annee;
	}
	if (cJours < 0){
		//int nbJoursMaxMois = retourneNbJoursMois(annee, mois, st);
		int nbJoursMax = retourneNbJoursMois(annee, mois, st);
		cJours = nbJoursMax + cJours;
		cMois = cMois - 1;
		cAnnees -=1;
	}
	if (cMois < 0){
		cMois = 12 + cMois;
	}
	AfficherResultats(cAnnees, cMois, cJours);
}

/* void AfficherResultats(int annees, int mois, int jours){
	@params: int annee, int mois, int jours
	@return: void
	Description: Cette fonction formatte l'affichage des parametres en
		fonction de ceux-ci.

*/
void AfficherResultats(int annees, int mois, int jours){
	if (jours == 0){
		if (mois == 0){
			if (annees==1)
				cout << "\nVous avez 1 an! Noyeux Janniversaire !";
			else
				cout << "\nVous avez " << annees << " ans!";
		}
		else
		{
			if (annees==0)
				cout << "\nVous avez " << mois << " mois!";
			else if (annees==1)
				cout << "\nVous avez 1 an et " << mois << " mois!";
			else
				cout << "\nVous avez " << annees << " et " << mois << "!";
		}
	}
	else
	{
		if (jours == 1){
			if (mois ==0){
				if (annees==0)
					cout << "\nVous avez 1 jour!";
				else if (annees==1) cout << "\nVous avez 1 an et 1 jour!";
				else cout << "\nVous avez " << annees << " et 1 jour!";
			}
			else
			{
				if (annees==0)
					cout << "\nVous avez " << mois << " mois et 1 jour!";
				else if (annees==1) cout << "\nVous avez 1 an, " << mois
					<< " mois et 1 jour!";
				else cout << "\nVous avez " << annees << " ans, " << mois
					<< " mois et 1 jour!";
			}
		}
		else
		{
			if (mois==0){
				if (annees==0)
					cout << "\nVous avez " << jours << " jours!";
				else if (annees==1)
					cout << "\nVous avez 1 an et " << jours << " jours:";
				else
					cout << "\nVous avez " << annees << " ans et " << jours
						<< " jours!";
			}
			else
			{
				if (annees==0)
					cout << "\nVous avez " << mois << " mois et " << jours
						<< " jours!";
				else if (annees==1)
					cout << "\nVous avez 1 an, " << mois << " mois et "
						<< jours << " jours!";
				else
					cout << "\nVous avez " << annees << " ans, " << mois
						<< " mois et " << jours << " jours!";
			}
		}
	}
}

/* int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
	@params: int annee, int mois
	@return: int nombre de jours restants dans le mois de l'année spécifiée.
	Description: Cette fonction a besoin de l'année car si le mois est 2
		il faut savoir si l'année est bissextile ou pas.
*/
int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
	switch(mois){
		case 1: return 31;break;
		case 2: if (estBissextile(annee)) return 29; else return 28;break;
		case 3: return 31;break;
		case 4: return 30;break;
		case 5: return 31;break;
		case 6: return 30;break;
		case 7: return 31;break;
		case 8: return 31;break;
		case 9: return 30;break;
		case 10: return 31;break;
		case 11: return 30;break;
		case 12: return 31;break;
	}
}

/* bool estBissextile(int annee){
	@params: int annee
	@return: bool
	Description: Si l'année fournit en parametre est bissextile
		renvoi TRUE, sinon FALSE
*/
bool estBissextile(int annee){
	//Une année bisextile est une année divisible par 4
	//sauf si elle est divisible par 100 auquel cas elle doit être divisible par 400.
	if (annee%100==0 && annee%400==0) return false;
	else if (annee%4==0) return true;
}

/* int rSaisieValideAnnee(SYSTEMTIME st)
	@param: SYSTEMTIME st
	@return:int annee
	Description: renvoi une saisie utilisateur valide (l'année ici)
*/
int rSaisieValideAnnee(SYSTEMTIME st){
	int annee;
	do {
		cout << "Veuillez saisir votre annee de naissance (inferieur a " << st.wYear << "):";
		cin >> annee;
	}while (!(annee <= st.wYear ));
	return annee;
}

/* int rSaisieValideMois(int annee, SYSTEMTIME st)
	@param: int annee, SYSTEMTIME st
	@return: int mois
	Description: renvoi une saisie utilisateur valide (ici le mois)
		valide dans le sens ou si l'année specifiée avant EST
		l'année en cours, l'utilisateur ne peut renseigner un mois
		supérieur au mois actuel
*/
int rSaisieValideMois(int annee, SYSTEMTIME st){
	int mois;
	do {
		cout << "Veuillez saisir votre mois de naissance ";
		if (annee == st.wYear) cout << "(inferieur a " << st.wMonth << ")";
		cout << ":";
		cin >> mois;
		if (annee==st.wYear && mois > st.wMonth) mois = 13;
	}while (!(mois<=12 && mois>=1));
	return mois;
}

/* int rSaisieValideJour(int annee, int mois, SYSTEMTIME st)
	@param: int annee, int mois, SYSTEMTIME st
	@return: int jour
	Description: renvoi une saisie utilisateur valide (ici le jour)
		valide dans le sens où la fonction prête attention au nombre de
		jours dans le mois, et si l'année est bissextile pour le mois de
		fevrier
*/
int rSaisieValideJour(int annee, int mois, SYSTEMTIME st){
	int jour=0, limit=0;
	if (annee == st.wYear && mois == st.wMonth){
		do{
			cout << "Veuillez saisir votre jour de naissance (inferieur a " << st.wDay << "):";
			cin >> jour;
		}while (!(jour > 0 && jour < st.wDay));
	}
	else{
		switch (mois){
			//mois à 31
				case 1:jour=rSaisieValideJours31(annee, mois, st);break;
				case 3:jour=rSaisieValideJours31(annee, mois, st);break;
				case 5:jour=rSaisieValideJours31(annee, mois, st);break;
				case 7:jour=rSaisieValideJours31(annee, mois, st);break;
				case 8:jour=rSaisieValideJours31(annee, mois, st);break;
				case 10:jour=rSaisieValideJours31(annee, mois, st);break;
				case 12:jour=rSaisieValideJours31(annee, mois, st);break;
			//mois à 30
				case 4:jour=rSaisieValideJours30(annee, mois, st);break;
				case 6:jour=rSaisieValideJours30(annee, mois, st);break;
				case 9:jour=rSaisieValideJours30(annee, mois, st);break;
				case 11:jour=rSaisieValideJours30(annee, mois, st);break;
			//mois de fevrier verifie si année bissextile
			case 2:
				jour=rSaisieValideJoursBi(annee, mois, st);break;
		}
	}
	return jour;
}

/* int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st)
	@param: int annee, int mois, SYSTEMTIME st
	@return: int jour
	Description: renvoi une saisie utilisateur valide (ici le jour)
		comprise entre 1 et 31
*/
int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st){
	int jour;
	do {
			cout << "Veuillez saisir votre jour de naissance (entre 1 et 31):";
			cin >> jour;
		}while(!(jour>=1 && jour<=31));
	return jour;
}

/* int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st)
	@param: int annee, int mois, SYSTEMTIME st
	@return: int jour
	Description: renvoi une saisie utilisateur valide (ici le jour)
		comprise entre 1 et 30
*/
int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st){
	int jour;
	do {
			cout << "Veuillez saisir votre jour de naissance (entre 1 et 30):";
			cin >> jour;
		}while(!(jour>=1 && jour<=30));
	return jour;
}

/* int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st)
	@param: int annee, int mois, SYSTEMTIME st
	@return: int jour
	Description: renvoi une saisie utilisateur valide (ici le jour)
		comprise entre 1 et 28/29 suivant si année bissextile.
*/
int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st){
	int jour;
		if (estBissextile(annee)){
			do{
				cout << "Veuillez saisir votre jour de naissance (entre 1 et 29):";
				cin >> jour;
			}while(!(jour>=1 && jour<=29));
			return jour;
		}
		else {
			do{
				cout << "Veuillez saisir votre jour de naissance (entre 1 et 28):";
				cin >> jour;
			}while(!(jour>=1 && jour<=28));
			return jour;
		}
}
/* **** FIN FONCTIONS **** */

 Conclusion

si bugs, suggestions, ... n'hésitez pas!


 Sources du même auteur

CALCUL AGE

 Sources de la même categorie

CALCULE LOG(X) par tagtog
Source avec Zip Source avec une capture ALGORITHME DE TRI D'UN TABLEAU PAR ORDRE CROISSANT OU DÉCROI... par Thuzhen
Source avec une capture CALCUL DE VARIANCE par Minilogus
Source avec une capture GÉNÉRATEUR DE CLÉS SUR 26 DIGITS AU FORMAT HEXADÉCIMAL par besilent
Source avec Zip Source avec une capture ALGORITHME DE CRYPTAGE/DECRYPTAGE par besilent

 Sources en rapport avec celle ci

Source avec une capture CONVERTISSEUR par smartties
Source avec une capture CALCUL DE VARIANCE par Minilogus
Source avec une capture CALCUL D'INCERTITUDE par Minilogus
PROGRAMME QUI CALCUL LE PPCM ET LE PGCD par AnoSantino
CALCUL AGE par l0gin

Commentaires et avis

Commentaire de max12 le 13/12/2005 17:16:12 administrateur CS

Tu aurais pu faire un update plutôt

Commentaire de miximog le 15/12/2005 17:30:04

oui un update aurai été mieu m'enfin ....;

Commentaire de iz1946 le 23/12/2007 13:12:09

Je pense que la fonction "calculAge" ne fonctionne pas correctement dans la partie
else if (mois==st.wMonth && jour > st.wDay){
cAnnees=st.wYear - annee;
cMois = 0;
cJours = st.wDay - jour;
}
ainsi que
else if (jour==st.wDay){
cAnnees = st.wYear - annee;
cMois = st.wMonth - mois;
cJours = 0;
}

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

BISSEXTILE [ par moulinexX ] Bonjour Je suis étudiant en premiere année de BTS iris, et j'ai un algorithme et le codage en C d'un exercice. J'ai pas mal chercher mais je tourne e Calcul grands nombres avec chaines de caractères [ par lectpe ] Bonjour. J'ai presque fini de réaliser un logiciel de math. L'utilisateur peut entrer en ligne de commande ce qu'il veut calculer et le logiciel lui La compilation a échoué. Object reference not set to an instance of an object [ par cadetspif ] Bonjour, voici le message d'erreur que j'obtiens quand j'execute mon projet. Il s'agit du 'Hello World' par défaut quand je crée un projet C++ avec Mo [EXCEL]calcul de moyenne scolaire: gerer les absents!! [ par poloiu ] Bonjour, j'ai besoin de calculer la moyenne de plusieurs note. J'ai deux conditions : 1 l'élève peux être absent 2 les notes sont sur 10 ou sur 20 Co calcul distance géodésique! [ par charniele2 ] coucoi à tous![^^clinoeil1] bjr!! j'aimerai que vous m'aider pour la programmation du calcul de la distance géodésique entre 2 points sur une forme co Traitement de Fichiers textes en C/C++ [ par devc26 ] Bonjour, Je dois réaliser une "moulinette" en C/C++ permettant de modifier l'affichage de résultats en format texte ( contexte: Visual Studio 2003).C Maillage 3D + quadtree + calcul de normales [ par buno ] Hello, J'ai un maillage 3D (terrain) avec 3 niveaux de détails que j'affiche à l'aide d'un quadtree. Le calcul et l'affichage des données se fait uniq Problème avec traitement de fichier (cplusplus !) [ par Sianrin ] Voila, j'explique mon problème. Pour voir un peu comment les accès au fichiers se géraient en cplusplus, je me suis mis en tête de faire un programme


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales