Donner la date avec le jour et mois et annee

Signaler
Messages postés
3
Date d'inscription
samedi 23 décembre 2006
Statut
Membre
Dernière intervention
30 décembre 2006
-
Messages postés
44
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
6 juillet 2009
-
bjr svp je cherche une applaication avec langage c qui permet de donner le date avec le jour le mois et l annee lorsq je veux ajouter des jours par exemple je donne 120 jours l application vat me dire que apres 120 jours la date sera comme ca jj/m/a  ou bien que avant 120 jours la date a  etait comme ca  jj/m/a  et merci
merci bcp 

6 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
120 jours de + que date locale sous Windows:
SYSTEMTIME sttm;
double d;
GetLocalTime(&sttm);
SystemTimeToVariantTime(&sttm, &d);
VariantTimeToSystemTime(d + 120, &sttm);

ciao...
BruNews, MVP VC++
Messages postés
198
Date d'inscription
vendredi 4 avril 2003
Statut
Membre
Dernière intervention
18 mars 2011
1
Exemple console:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>



int main(void)
{
  int Jours;
  time_t Temps;
  struct tm *Date;
 
  while(1)
  {
    time(&Temps); 
    Date = localtime(&Temps);
    printf("\nNous sommes le %02d/%02d/%d",
           Date->tm_mday,
           Date->tm_mon + 1,
           Date->tm_year + 1900);
    printf("\nNombre de jours [Positif, Negatif ou 0 pour Fin]: ");
    scanf("%d", &Jours);
    if(Jours == 0) break;
    Temps += (time_t)(Jours * 86400);
    if(Date = localtime(&Temps))
    {
      if(Jours > 0)
        printf("\nDans %d jour%s nous serons le %02d/%02d/%d\n",
               Jours,
               Jours > 1 ? "s" : "",
               Date->tm_mday,
               Date->tm_mon + 1,
               Date->tm_year + 1900);
      else
        printf("\nIl y a %d jour%s nous etions le %02d/%02d/%d\n",
               abs(Jours),
               abs(Jours) > 1 ? "s" : "",
               Date->tm_mday,
               Date->tm_mon + 1,
               Date->tm_year + 1900);
    }
    else
      printf("\nErreur... Nombre de jours trop grand !\n");                    
  }       
  return 0;
}
Messages postés
3
Date d'inscription
samedi 23 décembre 2006
Statut
Membre
Dernière intervention
30 décembre 2006

merci pour la reponse mais moi je cheche pas ca je veux entrer la date de n importe quel jour et je veux savoir que apres ou avant 400 jours par exemple  qu il est la date avec explication   de chaque ligne et merci

merci bcp
Messages postés
198
Date d'inscription
vendredi 4 avril 2003
Statut
Membre
Dernière intervention
18 mars 2011
1
Exemple console:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>



int main(void)
{
  int Jours, j, m, a;
  time_t Temps, Plus, Moins;  
  struct tm *Date, date = {0, 0, 12, 1, 0, 0, 0, 0, 0};
 
  while(1)
  {
    printf("\n[Entrez 0 pour Quitter]\n"); 
    printf("Jour .......... : "); scanf("%d", &j);
    if(j == 0) break;
    printf("Mois .......... : "); scanf("%d", &m);
    if(m == 0) break;
    printf("Annee ......... : "); scanf("%d", &a);
    if(a == 0) break;



    date.tm_mday = j;
    date.tm_mon  = m - 1;
    date.tm_year = a - 1900;
        if((Temps mktime(&date)) -1)
    {
      printf("\nErreur... Date hors limites !\n");
      continue;    
    }         
                     
    printf("Nombre de jours : "); scanf("%d", &Jours);
    if(Jours == 0) break;



    Plus = Temps + (time_t)(Jours * 86400);
               
    if(Date = localtime(&Plus))
    {
      printf("\n%02d/%02d/%d + %d jour%s = %02d/%02d/%d",
             date.tm_mday,
             date.tm_mon + 1,
             date.tm_year + 1900,
             Jours,
             Jours > 1 ? "s" : "",
             Date->tm_mday,
             Date->tm_mon + 1,
             Date->tm_year + 1900);
    }
    else
      printf("\nErreur... Nombre de jours trop grand !\n"); 
     
    Moins = Temps - (time_t)(Jours * 86400);
               
    if(Date = localtime(&Moins))
    {
      printf("\n%02d/%02d/%d - %d jour%s = %02d/%02d/%d\n",
             date.tm_mday,
             date.tm_mon + 1,
             date.tm_year + 1900,         
             Jours,
             Jours > 1 ? "s" : "",
             Date->tm_mday,
             Date->tm_mon + 1,
             Date->tm_year + 1900);
    }
    else
      printf("\nErreur... Nombre de jours trop grand !\n");                                             
  }       
  return 0;
}
Messages postés
3
Date d'inscription
samedi 23 décembre 2006
Statut
Membre
Dernière intervention
30 décembre 2006

salut et merci pour l applicaion mais il ya un seul  ereur s est dans le premiere etape (entre le jour le mois et l annee c est par exemple lorsque tu entre 31 dans fervrier l application doivent donner un ereur car fevrier ne contient pas 31 jours ou pour l annee lorsq l annee est bissextille le mois fevrier prendre 29 et le contraire ..... merci pour la reponse

merci bcp
Messages postés
44
Date d'inscription
jeudi 2 mars 2006
Statut
Membre
Dernière intervention
6 juillet 2009
1
regarde le code ce n'est pas ce que tu cherche si tu veut un code en C regarde ca mais si tu etudiant a mon ecole il faut que tu chage le code car moi aussi en ma demander  cet application

env:
debut




ecrire("donez la date d'aujourdhui")


ecrire ("donnez l'année")
lire (aaaa)
si (aaaa<=0) ou (aaaa<-char)
 /* il faut que l'annee ne recoie pas d'alphabet*/
ecrire (l'anne est errone")
ecrire("donnez l'an exact")
Tant que( aaaa < 0)"
    ecrire 'Vous devez entrer une année positive'
    lire aaaa
fintantque
finsi


ecrire("donnez le mois)
lire(mm)
si (mm<1) ou (mm>12) et(mm<-char)  alors
 /* il faut que le mois ne recoie pas d'alphabet*/
  ecrire("le mois et erronne")
   ercrire("voulez vous entrer le mois exact")
   lire (mm)
finsi


ecrire("donnez le jour")
lire (jj)
si (jj<1) ou (jj>31) alors
 /* il faut que le jour ne recoie pas d'alphabet*/
   ecrire("le jour et erronne")
   ercrire("voulez vous entrez le jour exact")
   lire (jj)
finsi
si (mm=2) et (aaaa mod 4=0) alors
    si (jj>29) alors
       ecrire("le jour est erronne")
       ecrire voulez vous entrer le jour exacte")
       lire(jj)
    sinon (mm =2) et (aaaa mod 4=1)alors
       si(jj>28) alors
         ecrire("le jour est erronne")
         ecrire voulez vous entrer le jour exacte")
         lire(jj)
        finsi
    finsi
finsi
-------------------------------------------------------------------------------------------------------
AN = aaaa;
MOIS = mm;
JOUR = jj;
tabMois = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}


si ((aaaa mod 4=0) et (aaaa mod 100!=0)) ou aaaa mod 400=0 alors
  tabMois[1] = 28;
finsi
/*On fait le jour d'avant*/
dire "Voici le jour d'avant";
si JOUR = 1 alors
  si MOIS = 1 alors
    ecrire "L'annee est " & AN - 1;
    ecrire "Le mois est 12";
    ecrire "Le jour est 31";
  sinon
    ecrire "L'annee est " & AN;
    ecrire "Le mois est " & MOIS-1;
    ecire "Le jour est " & tabMois[MOIS-2];
  finsi
sinon
  ecrire "L'annee est " & AN;
  ecrire "Le mois est " & MOIS;
  ecrire "Le jour est " & JOUR-1;
finsi
---------------------------------------------------------------------------------------------------------
AN = aaaa;
MOIS = mm;
JOUR = jj;
tabMois = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}


si ((aaaa mod 4=0) et (aaaa mod 100!=0)) ou aaaa mod 400=0 alors
  tabMois[1] = 28;
finsi
/*On fait le jour d'apres*/
dire "Voici le jour d'apres";
si JOUR = 1 alors
  si MOIS = 1 alors
    ecrire "L'annee est " & AN + 1;
    ecrire "Le mois est 12";
    ecrire "Le jour est 31";
  sinon
    ecrire "L'annee est " & AN;
    ecrire "Le mois est " & MOIS+1;
    ecrire "Le jour est " & tabMois[MOIS+2];
  finsi
sinon
  dire "L'annee est " & AN;
  dire "Le mois est " & MOIS;
  dire "Le jour est " & JOUR+1;
finsi
-------------------------------------------------------------------------------------------




/*antrez le nombre des jours */
dire "Voici le jour d'apres";
lire(NB)
si JOUR = NB alors
  si MOIS = MM alors
    dire "L'annee est " & AN++ ;
    dire "Le mois est 12";
    dire "Le jour est 31";
  sinon
    dire "L'annee est " & AN;
    dire "Le mois est " & MOIS++;
    dire "Le jour est " & tabMois[MOIS+MM];
  finsi
sinon
  dire "L'annee est " & AN;
  dire "Le mois est " & MOIS;
  dire "Le jour est " & JOUR+NB;
finsi




salut ca roule