IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Téléchargé 57 fois
Vote des utilisateurs
0 
0 
Détails
Éditeur : beyo
Licence : Non renseignée
Mise en ligne le 30 novembre 2010
Plate-formes : Linux, Mac, Windows
Langue : Français
Référencé dans
Navigation

Calcul de l'écart entre deux dates

A partir de deux dates la fonction Diff calcul le nombre de jours qui sépare ces deux dates, en tenant compte des années bissextiles.
Avatar de pottiez
Responsable Magazine https://www.developpez.com
Le 30/11/2010 à 16:14
Bonjour, Je vous propose un nouvel élément à utiliser : Calcul de l'écart entre deux dates

A partir de deux dates la fonction Diff calcul le nombre de jours qui sépare ces deux dates, en tenant compte des années bissextiles.

Qu'en pensez-vous ?
Avatar de Roland Chastain
Rédacteur/Modérateur https://www.developpez.com
Le 29/10/2014 à 7:49
Citation Envoyé par pottiez Voir le message
Qu'en pensez-vous ?
Bonjour ! Il me semble qu'il y a deux petites choses à corriger dans le code.

Code : Sélectionner tout
NJ += 365;//364;
Code : Sélectionner tout
NJ += NJ2;//NJ2+1;
P.-S. On peut aussi ajouter ceci, pour le cas où la date postérieure est passée en premier :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int diff(int j1, int m1, int a1, int j2, int m2, int a2)
{
  ...
  int j3, m3, a3;
  
  if (
    (a1 > a2) ||
    ((a1 == a2) && (m1 > m2)) ||
    ((a1 == a2) && (m1 == m2) && (j1 > j2))
  )
  {
    j3 = j1;
    m3 = m1;
    a3 = a1;
    j1 = j2;
    m1 = m2;
    a1 = a2;
    j2 = j3;
    m2 = m3;
    a2 = a3;
  }
Avatar de PLU74
Candidat au Club https://www.developpez.com
Le 17/05/2019 à 16:15
je cherche une fonction similaire
retourner la date décalée d'une date initiale d'un certain nombre de jours entier, positif ou négatif.
Dans mon cas les deux dates sont dans le même siècle, mais cela changera d'ici 3 mois.
Pour l'instant j'utilise la time.h du package minGW.
Je programme très occasionnellement ...

Merci
Avatar de PLU74
Candidat au Club https://www.developpez.com
Le 17/05/2019 à 19:45
je trouve 10 jours d'écart avec mon calcul !
nb de jours du 16/5/19 au 30/08/99 ---> 29357
selon Diff Diff(16,5,19,30,8,99) = 29347 !

ton code m'a permis de vérifier le mien ! Merci
Avatar de droggo
Expert confirmé https://www.developpez.com
Le 18/05/2019 à 13:31
Bonjour,

Il en a déjà été question, et à mon avis, la meilleure solution est de
convertir les 2 dates en Jour Julien
et faire la différence.

Le calcul du Jour Julien intègre toutes les variations du calendrier,
ce qui résout tes problèmes de calcul.

On trouve facilement comment faire ce calcul, il y a même des sites qui le feront pour toi.
Avatar de PLU74
Candidat au Club https://www.developpez.com
Le 18/05/2019 à 15:08
Et la fonction qui convertit le jour julien en date ou en jour/mois/an ?
En fait je pars d'une date , j'y ajoute n jours et je veux la nouvelle date, si possible en jour,mois,année ...
J'ai bidouillé qque chose à base d'année moyenne de 365.25 jours et de mois moyen de 365.25/12 ..

ce n'est pas encore tip top.
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.