begin process at 2012 05 27 21:14:45
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Date / Heure

 > VACCATION (AVEC FONCTION) CONSOLERIE, REMIX GCC

VACCATION (AVEC FONCTION) CONSOLERIE, REMIX GCC


 Information sur la source

Note :
Aucune note
Catégorie :Date / Heure Classé sous :Date, Calendrier, Calcul, Agenda, Temps Niveau :Débutant Date de création :26/02/2008 Date de mise à jour :26/02/2008 06:56:32 Vu :3 254

Auteur : sebman

Ecrire un message privé
Site perso
Commentaire sur cette source (2)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Cette source a peu d'interet, c'est comme "VACCATION (AVEC FONCTIONS) CONSOLERIE VCPP6" si ce n'est quelques changement pour une compilation sous G++:

G++: g++ -Wall -o Vaccation Vaccation.cpp

Source

  • /* Modifier pour etre compilable par G++: g++ -Wall -o Vaccation-SN-GPP Vaccation-SN-GPP.cpp */
  • /* Ce programme me sert en quelque sorte d'emploi du temps,
  • En effet je ne travail pas comme tout le monde, c-a-d 5 jours ouvrables
  • + 1 week-end, je bosse en cycle de 6 vaccations:
  • 1° Vaccation----> 1° Nuit
  • 2° Vaccation----> 2° Nuit
  • 3° Vaccation----> 3° Nuit
  • 4° Vaccation----> 2° Nuit
  • 5° Vaccation----> 1° Repos
  • 6° Vaccation----> 2° Repos
  • */
  • #include <iostream>
  • #include <stdio.h>
  • #include <sys/timeb.h>
  • /* Declaration des Variables */
  • int JourSaisie;
  • int MoisSaisie;
  • int AnneeSaisie;
  • int Fevrier;
  • int MaxJours;
  • int Annee2000 = 2000;
  • int EcartAnnees;
  • int AnneesBissextiles;
  • int EcartJoursAnnees;
  • int TotalJoursMois;
  • int NombreDeJours;
  • int Vaccation;
  • long i;
  • /* Declaration des Fonctions */
  • int ControlJour();
  • int AnneeBissextile ();
  • int Annees ();
  • int NombreAnneeBissextile ();
  • int NombreJoursAnnees ();
  • int NombresJourAnneeSaisie ();
  • int TotalJours ();
  • int NomVaccation ();
  • int Attente ();
  • int main (void)
  • {
  • // On commence par la saisie de la Date
  • printf("\n\n\t Entrez une date au format 18/05/1976: ");
  • scanf(" %d / %d / %d", &JourSaisie, &MoisSaisie, &AnneeSaisie);
  • // Execution des fonctions les unes après les autres
  • AnneeBissextile ();
  • Annees();
  • NombreAnneeBissextile ();
  • ControlJour();
  • NombreJoursAnnees ();
  • NombresJourAnneeSaisie ();
  • TotalJours ();
  • NomVaccation ();
  • Attente ();
  • return 0;
  • }
  • int ControlJour()
  • {
  • switch (MoisSaisie)
  • {
  • case 1: MaxJours = 31;break;
  • case 2: MaxJours = Fevrier;break;
  • case 3: MaxJours = 31;break;
  • case 4: MaxJours = 30;break;
  • case 5: MaxJours = 31;break;
  • case 6: MaxJours = 30;break;
  • case 7: MaxJours = 31;break;
  • case 8: MaxJours = 31;break;
  • case 9: MaxJours = 30;break;
  • case 10: MaxJours = 31;break;
  • case 11: MaxJours = 30;break;
  • case 12: MaxJours = 31;break;
  • default: printf("Vous vous etes plantes lors de la saisie du mois !!!\n");break;
  • }
  • if (JourSaisie <1 || JourSaisie> MaxJours)
  • printf ("\n\n ----> Erreur dans la saisie du Jour de la date !!!");
  • return MaxJours;
  • }
  • // Calcul le nombre d'annee par rapport à la Date de référence
  • // qui n'est autre que le 01/01/2000 qui est elle même 1 année
  • // bissextile (d'ou le -1)
  • int Annees ()
  • {
  • EcartAnnees= AnneeSaisie-Annee2000-1;
  • return EcartAnnees;
  • }
  • // Calcul du nombre d'annees bissextile entre l'annee saisie et
  • // l'annee 2000
  • int NombreAnneeBissextile ()
  • {
  • AnneesBissextiles= (EcartAnnees / 4);
  • return AnneesBissextiles;
  • }
  • // Ici on calcul le nombre de jour entre les annees
  • int NombreJoursAnnees ()
  • {
  • EcartJoursAnnees= (AnneesBissextiles* 366) + ((EcartAnnees-AnneesBissextiles)*365);
  • return EcartJoursAnnees;
  • }
  • // La fonction suivante détermine si l'annee est bissextile
  • // si c'est le cas le mois de Fevrier vaudra 29 jours
  • // autrement il vaudra 28 jours
  • int AnneeBissextile ()
  • {
  • if ((AnneeSaisie % 4 ) == 0)
  • {Fevrier= 29; } // printf(" annee bissextille \n");}
  • else
  • {Fevrier= 28;}
  • return Fevrier;
  • }
  • // Là on détermine le nombre de jours entre le 1° du mois
  • // et le 01/01/2000
  • int NombresJourAnneeSaisie ()
  • {
  • switch (MoisSaisie)
  • {
  • case 1: TotalJoursMois = 0;break;
  • case 2: TotalJoursMois = 31;break;
  • case 3: TotalJoursMois = 31+Fevrier;break;
  • case 4: TotalJoursMois = 31+Fevrier+31;break;
  • case 5: TotalJoursMois = 31+Fevrier+31+30;break;
  • case 6: TotalJoursMois = 31+Fevrier+31+30+31;break;
  • case 7: TotalJoursMois = 31+Fevrier+31+30+31+30;break;
  • case 8: TotalJoursMois = 31+Fevrier+31+30+31+30+31;break;
  • case 9: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31;break;
  • case 10: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30;break;
  • case 11: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30+31;break;
  • case 12: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30+31+30;break;
  • default: printf("Vous vous etes plantes lors de la saisie du mois !!!\n");break;
  • }
  • return MoisSaisie;
  • }
  • //Addition des Jours
  • int TotalJours ()
  • {
  • NombreDeJours= TotalJoursMois+EcartJoursAnnees+JourSaisie;
  • return NombreDeJours;
  • }
  • // Ici on determine le jour de la Vaccation
  • int NomVaccation ()
  • {
  • Vaccation= NombreDeJours%6;
  • printf ("\n\n\n ******************************\n");
  • switch (Vaccation)
  • {
  • case 0: printf (" * Deuxieme Nuitnuit * \n");break;
  • case 1: printf (" * Troisième nuit * \n");break;
  • case 2: printf (" * Quatrieme nuit * \n");break;
  • case 3: printf (" * Premier Repos * \n");break;
  • case 4: printf (" * Deuxieme Repos * \n");break;
  • case 5: printf (" * Premiere Nuit * \n");break;
  • default: printf (" * Erreur !!! * \n");break;
  • }
  • printf (" ****************************** \n\n\n");
  • printf("\n\n\tGrand Merci a http:////www.cppfrance.com");
  • printf("\n\tGrand Merci a http:////casteyde.christian.free.fr pour son exellent tutoriel !!!\n\n");
  • return Vaccation;
  • }
  • //////////////////////////////////////////////////////////////////
  • // Boucle d'attente
  • int Attente ()
  • {
  • struct timeb TempsDepartAttente;
  • struct timeb TempsFinAttente;
  • printf ("Attente 3 petites secondes ...\n\n\n" );
  • ftime(&TempsDepartAttente);
  • while (TempsFinAttente.time <= TempsDepartAttente.time + 3)
  • {ftime(&TempsFinAttente);}
  • return 0;
  • }
/* Modifier pour etre compilable par G++: g++ -Wall -o Vaccation-SN-GPP Vaccation-SN-GPP.cpp */
/* Ce programme me sert en quelque sorte d'emploi du temps,
En effet je ne travail pas comme tout le monde, c-a-d 5 jours ouvrables
+ 1 week-end, je bosse en cycle de 6 vaccations:
1° Vaccation----> 1° Nuit
2° Vaccation----> 2° Nuit
3° Vaccation----> 3° Nuit
4° Vaccation----> 2° Nuit
5° Vaccation----> 1° Repos
6° Vaccation----> 2° Repos
*/
#include <iostream>
#include <stdio.h>
#include <sys/timeb.h> 


/* Declaration des Variables */
int JourSaisie;
int MoisSaisie;
int AnneeSaisie;
int Fevrier;
int MaxJours;
int Annee2000 = 2000;
int EcartAnnees;
int AnneesBissextiles;
int EcartJoursAnnees;
int TotalJoursMois;
int NombreDeJours;
int Vaccation;
long i;

/* Declaration des Fonctions */
int ControlJour();
int AnneeBissextile ();
int Annees ();
int NombreAnneeBissextile ();
int NombreJoursAnnees ();
int NombresJourAnneeSaisie ();
int TotalJours ();
int NomVaccation ();
int Attente ();

int main (void)
	{
// On commence par la saisie de la Date
	printf("\n\n\t Entrez une date au format 18/05/1976: ");
	scanf(" %d / %d / %d", &JourSaisie, &MoisSaisie, &AnneeSaisie);
	
// Execution des fonctions les unes après les autres

	
	AnneeBissextile ();

	Annees();

	NombreAnneeBissextile ();
	
	ControlJour();

	NombreJoursAnnees ();

	NombresJourAnneeSaisie ();
	
	TotalJours ();

	NomVaccation ();
	
	Attente ();

	return 0;
	}

int ControlJour()
	{
	switch (MoisSaisie)
		{
	case 1: MaxJours = 31;break;
	case 2: MaxJours = Fevrier;break;
	case 3: MaxJours = 31;break;
	case 4: MaxJours = 30;break;
	case 5: MaxJours = 31;break;
	case 6: MaxJours = 30;break;
	case 7: MaxJours = 31;break;
	case 8: MaxJours = 31;break;
	case 9: MaxJours = 30;break;
	case 10: MaxJours = 31;break;
	case 11: MaxJours = 30;break;
	case 12: MaxJours = 31;break;
	default: printf("Vous vous etes plantes lors de la saisie du mois !!!\n");break;
		}
	if (JourSaisie <1 || JourSaisie> MaxJours)
		printf ("\n\n ----> Erreur dans la saisie du Jour de la date !!!");
	return MaxJours;
	}


// Calcul le nombre d'annee par rapport à la Date de référence
// qui n'est autre que le 01/01/2000 qui est elle même 1 année 
// bissextile (d'ou le -1)

int Annees ()
	{
	EcartAnnees= AnneeSaisie-Annee2000-1;
	return EcartAnnees;
	}
	
// Calcul du nombre d'annees bissextile entre l'annee saisie et 
// l'annee 2000
int NombreAnneeBissextile ()
	{
	AnneesBissextiles= (EcartAnnees / 4);
	return AnneesBissextiles;
	}

// Ici on calcul le nombre de jour entre les annees
int NombreJoursAnnees ()
	{
	EcartJoursAnnees= (AnneesBissextiles* 366) + ((EcartAnnees-AnneesBissextiles)*365);
	return EcartJoursAnnees;
	}
// La fonction suivante détermine si l'annee est bissextile
// si c'est le cas le mois de Fevrier vaudra 29 jours
// autrement il vaudra 28 jours
int AnneeBissextile ()
	{
	if ((AnneeSaisie % 4 ) == 0)
		{Fevrier= 29; } //		printf(" annee bissextille \n");}
	else
		{Fevrier= 28;}
	return Fevrier;
	}
// Là on détermine le nombre de jours entre le 1° du mois
// et le 01/01/2000
int NombresJourAnneeSaisie ()
	{
	switch (MoisSaisie)
		{
	case 1: TotalJoursMois = 0;break;
	case 2: TotalJoursMois = 31;break;
	case 3: TotalJoursMois = 31+Fevrier;break;
	case 4: TotalJoursMois = 31+Fevrier+31;break;
	case 5: TotalJoursMois = 31+Fevrier+31+30;break;
	case 6: TotalJoursMois = 31+Fevrier+31+30+31;break;
	case 7: TotalJoursMois = 31+Fevrier+31+30+31+30;break;
	case 8: TotalJoursMois = 31+Fevrier+31+30+31+30+31;break;
	case 9: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31;break;
	case 10: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30;break;
	case 11: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30+31;break;
	case 12: TotalJoursMois = 31+Fevrier+31+30+31+30+31+31+30+31+30;break;
	default: printf("Vous vous etes plantes lors de la saisie du mois !!!\n");break;
		}
	return MoisSaisie;
	}

//Addition des Jours
int TotalJours ()
	{
	NombreDeJours= TotalJoursMois+EcartJoursAnnees+JourSaisie;
	return NombreDeJours;
	}

// Ici on determine le jour de la Vaccation
int NomVaccation ()
	{
	Vaccation= NombreDeJours%6;
	printf ("\n\n\n     ******************************\n");
	switch (Vaccation)
		{
	case 0: printf ("     *     Deuxieme Nuitnuit     * \n");break;
	case 1: printf ("     *     Troisième nuit        * \n");break;
	case 2: printf ("     *     Quatrieme nuit        * \n");break;
	case 3: printf ("     *     Premier Repos         * \n");break;
	case 4: printf ("     *     Deuxieme Repos        * \n");break;
	case 5: printf ("     *     Premiere Nuit         * \n");break;
	default: printf ("     *        Erreur !!!          * \n");break;
		}	
	printf ("     ****************************** \n\n\n");
	printf("\n\n\tGrand Merci a http:////www.cppfrance.com");
	printf("\n\tGrand Merci a http:////casteyde.christian.free.fr  pour son exellent tutoriel !!!\n\n");
	return Vaccation;
	}

//////////////////////////////////////////////////////////////////
// Boucle d'attente
 int Attente ()
{
	struct timeb TempsDepartAttente;
	struct timeb TempsFinAttente;
	printf ("Attente 3 petites secondes ...\n\n\n" );
	ftime(&TempsDepartAttente);
	while (TempsFinAttente.time <= TempsDepartAttente.time + 3)
	{ftime(&TempsFinAttente);}
	return 0;
}

 Conclusion

Dans les faits:
-Changement de

#include <iostream.h>
#include <stdio.h>
#include <sys\\timeb.h>

en

#include <iostream>
#include <stdio.h>
#include <sys/timeb.h>

-rajout de int devant toute les fonctions lors de l'appel


 Historique

26 février 2008 06:56:33 :
Correction de fotes de phrapes

 Sources du même auteur

Source avec Zip VACCATION-WIN32 VCPP6 (MERCI À XENTOR609)
Source avec Zip DATE EN BRETON (MODE CONSOLE,VCPP6)
Source avec Zip CHRONOMETRE AU MILLIEME DE SECONDES EN MODE CONSOLE VC++6
Source avec Zip NOMBRES PREMIERS AVEC CHRONO ET INCREMENTEUR INCORPORÉ
VACCATION (AVEC FONCTIONS) CONSOLERIE VCPP6

 Sources de la même categorie

DATETIMECONVERTER par guill76
Source avec Zip CLASSE DE DATE LOCALISÉE (20 LANGUES) par exar
Source avec Zip CLASSE MOMENT V2.0 par le_duche
CALCUL DATE DE PAQUES (DATE MOBILE) par steph12358
Source avec Zip Source avec une capture AFFICHER ET DIRE L'HEURE (REPONSE FORUM) par ndubien

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture LOGICIEL AGENDA PLANNING par BencoAndCo
Source avec Zip Source avec une capture [WIN32] AGENDA / ORGANISEUR (GESTION DU CONTRÔLE "CALENDRIER... par uaip
Source avec Zip GESTION DE LA DATE DE L'HEURE ET DU TEMPS par le_duche
CALCUL AGE par l0gin
CALENDRIER PERPÉTUEL par blassiou083

Commentaires et avis

Commentaire de juju12 le 26/02/2008 20:19:25

pourquoi utiliser iostream ET stdio? (d'ailleurs j'ai pas vu de fonctions d'iostream, sauf distraction de ma part)

Commentaire de sebman le 28/02/2008 07:19:29

t'as raison je vais virer ça.
Merci

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Calendrier C++ .NET [ par tarzent ] Salut!Je voudrais récupérer la date sélectionnée dans un controle "IDC_MONTHCALENDAR"... J'y arrive dans une Form, il suffit de faire appel à la fonct Calcul du temps de chargement d'un prog... [ par MorZong ] Salut,Encore moi, je suis partout, là c'est pour me dire comment faire pour calculer le temps (en millisecondes si c'est possible) qu'a prit un progr Calcul Date a partir d'un nombre de jours [ par Trinita16 ] Je cherche si il existe une fonction simple pour convertir un nombre de jour en une date. Sachant que la date départ peut varier....Merci d'avance.... Calcul date à partir d'un nombre de jours [ par Trinita16 ] Bonjour,1. Une date fixe de debut de comptage de jours2. Un nombre de jours depuis la date en 13. Je veux le nombre de jour en une date.Voila mon prob Comment récupérer la valeur choisie dans un calendrier en mode graphique et la mettre ensuite dans une String ? [ par michelcreve ] in first, Bonjour à tous Voila, j'essaie de faire une appli pour demander de saisir une date dans un champ avec la possibilité de cliquer sur un bout temps de calcul cpu [ par maloudre ] bonjour a tous voila je suis en train de faire un prgm en c++ sous linux et j aimerai savoir combien de temps tourne mon pc car les calcule peuvent d CALCUL TEMPS CPU [ par maloudre ] salut a tous j aimerai connaitre de facon simlpe combien de tps calcul mon cpu tourne pendant qe mon logiciel de calcul tourne c un programme de cal Calcul du temps d'execution en millisecondes [ par Yakurena ] Bonjour,  Je réalise un programme en C++ sous Linux dans lequel j'ai besoin de calculer le temps d'éxécution avec une précision en millisecondes.  Je Callback sur date locale [ par HeavenForsaker ] bonjour,Je voulais savoir si il y a un moyen de savoir quand on change de jour sous Windows.Pour l'instant, le seul moyen que je vois c'est prendre le calcul de la taille de la ram en temps réel [ par jawsn ] salut,j'ai un petit pg qui calcule le poucentage d'utilisaton de la ram en temps réel avec TMemoryStatus *MS = new TMemoryStatus();Gl


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
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,655 sec (3)

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