PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2024 → Nombre de jours dans une année
Nombre de jours dans une année
Iniciado por sylvie.anthierens, 28,mar. 2006 16:23 - 16 respuestas
Publicado el 28,marzo 2006 - 16:23
Bonjour,

je voudrais connaitre le nombre de jours dans une année.

Existe-t-il une façon rapide de trouver ce nombre ?


Merci d'avance,

Sylvie
Publicado el 28,marzo 2006 - 17:13
d1, d2 sont des entier
d1 = DateVersEntier("20060101")
d2=DateVersEntier("20061231")

LIB_Libellé1..Libellé = d2-d1
Publicado el 28,marzo 2006 - 17:13
Bonjour,

un truc du type

DateDifférence( ANNEE+"0101",NumériqueVersChaîne(Val(ANNEE)+1)+"0101")

devrait faire l'affaire.

A+

--
Francis MOREL
Publicado el 28,marzo 2006 - 17:13
La fonction DateDifférence te permet de calculer la différence de jours entre deux dates.
Publicado el 28,marzo 2006 - 17:50
"syl" <sylvie.anthierens@sofedis.fr> a écrit dans le message de
news:44290d79$1@news.pcsoft.fr...

Bonjour,

je voudrais connaitre le nombre de jours dans une année.

Existe-t-il une façon rapide de trouver ce nombre ?


d1,d2 sont des dates
d1=datesys()
d1..jour=1
d1..mois=1

d2=d1
d2..annee+=1


result est une duree=d2-d1

info(result..jour)

j'ai pas testé mais ca sonne bien
Publicado el 28,marzo 2006 - 18:04
Salut.

alors c'est simple. sachant qu'il y'a 365 jours les années non bisextile (dsl je sais pas comment ca s'ecrit) et 366 les autres on fait:

si Modulo (<annee>,4) = 0 alors nbjour = 366 sinon nbjour = 365.

En esperant t'avor aidé.

MikeFilth
Publicado el 28,marzo 2006 - 18:06
Bonjour,

Merci de votre aide, je vais essayer vos solutions.

Cordialement,

Sylvie
Publicado el 28,marzo 2006 - 18:20
Cette solution n'est pas complète.

Les années bisextiles respectent les règles suivantes :

une année est bisextile si elle est un multiple de 4 et de 400 mais pas de 100

En gros (pseudo code) :

bisextile est booleen = faux
si annee mod 4 = 0 alors
-- bisextile = vrai
-- si annee mod 100 = 0 alors
-- -- bisextile = faux
-- -- si annee mod 400 = 0 alors
-- -- -- bisextile = vrai
-- -- fin
-- fin
fin

Apres pour ce qui est des fonctions windev je me suis pas encore penché dessus (pas encore eu besoin)

Lionel
Publicado el 28,marzo 2006 - 19:30
re.

Pourtant l'anne 2000 est bixeltile.
elle est multiple de 4
elle est multiple de 400
elle est multiple de 100.

bizarre non ????
Publicado el 28,marzo 2006 - 20:28
Lionel a pensé très fort :
Cette solution n'est pas complète.

Les années bisextiles respectent les règles suivantes :

une année est bisextile si elle est un multiple de 4 et de 400 mais pas de 100


Bonsoir,
Comment une année peut-elle être à la fois: multiple de 400 et pas de 100 ???
Freddie
Publicado el 28,marzo 2006 - 20:31
Non, c'est normal:
Elle est divisible par 4, donc elle est bissextile. Mais comme elle est divisible par 100, elle ne l'est pas. Mais comme elle est divisible par 400, elle est bissextile.
Par contre, prenons l'exemple de 2100:
Elle est divisible par 4, donc elle est bissextile. Mais comme elle est divisible par 100, elle ne l'est pas. Et comme elle n'est divisible par 400, elle n'est pas bissextile.

Frédéric.
Publicado el 28,marzo 2006 - 23:56
Quelques précisions

Années bissextiles
Le calendrier grégorien a été conçu pour suivre au mieux le cycle des saisons, autrement dénommé « année tropique », c'est à dire l'intervalle de temps séparant deux équinoxes de printemps consécutives. Cette année tropique dure 365 jours, 5 heures, 48 minutes, et 46,02 secondes. Comme ce chiffre n'est pas un compte rond de jours, la solution retenue est d'ajouter un jour (le 29 février) les années bissextiles. Une année est bissextile si elle est divisible par quatre et pas par 100 (à moins qu'elle ne soit aussi divisible par 400). Par conséquent les années 1700, 1800, 1900 et 2100 ne sont pas bissextiles alors que les années 1600, 2000 et 2400 le sont.

Si une année calendaire durait toujours 365 jours exactement, elle serait trop courte de 0,2422 jour par an tous les ans. Sur un siècle cela ferait un décalage d'environ 24 jours amenant le début du printemps dans l'hémisphère nord au 13 avril au lieu du 21 mars !

yl
Publicado el 29,marzo 2006 - 12:12
Datedifference ou

Madate est une date=datesys()

si pas datevalide(MADATE..Annee+"0229") alors
// Année Normale
Renvoyer 365
Sinon
//Année Bissextile
renvoyer 366
fin
Publicado el 29,marzo 2006 - 12:30
yannick a présenté l'énoncé suivant :
Quelques précisions

Années bissextiles
Le calendrier grégorien a été conçu pour suivre au mieux le cycle des saisons, autrement dénommé « année
tropique », c'est à dire l'intervalle de temps séparant deux équinoxes de printemps consécutives. Cette
année tropique dure 365 jours, 5 heures, 48 minutes, et 46,02 secondes. Comme ce chiffre n'est pas un
compte rond de jours, la solution retenue est d'ajouter un jour (le 29 février) les années bissextiles.
Une année est bissextile si elle est divisible par quatre et pas par 100 (à moins qu'elle ne soit aussi
divisible par 400). Par conséquent les années 1700, 1800, 1900 et 2100 ne sont pas bissextiles alors que
les années 1600, 2000 et 2400 le sont.

Si une année calendaire durait toujours 365 jours exactement, elle serait trop courte de 0,2422 jour par
an tous les ans. Sur un siècle cela ferait un décalage d'environ 24 jours amenant le début du printemps
dans l'hémisphère nord au 13 avril au lieu du 21 mars !

Bonjour,
Merci de ces précisions que j'ignorais.
Je comprends mieux maintenant la divisibilité par 400 et par 100 évoquée précédemment.
Freddie

--
freddie3@wanadoo.fr
Publicado el 29,marzo 2006 - 17:43
pas la peine de faire de fonction ! il y a 365 jours dans une année ! tout le monde sait ca...


(joke :x)
Publicado el 29,marzo 2006 - 17:59
tu offenses ceux qui sont nés un 28 Février

Dans son message précédent, Saturnin a écrit :
pas la peine de faire de fonction ! il y a 365 jours dans une année ! tout le
monde sait ca...


(joke :x)


--
Pierre BOUSQUET

" Ne me dites pas que ce problème est difficile.
S'il n'était pas difficile, ce ne serait pas un problème. "
Publicado el 30,marzo 2006 - 10:48
Saturnin .... Dans ta coquille Vite !
Et ceux qui sont nés un 29 février tu les mets où ! (366 Jours)