Section courante

A propos

Section administrative du site

Dans des langages de programmation Web comme ColdFusion, il existe de nombreuses fonctions de date inexistante dans d'autres langages. Une de celle-ci est la fonction du premier jour du mois depuis le début de l'année (FirstDayOfMonth). Permettant de connaitre ceci :

Année normal Année bissextile Position du mois Mois Jour/Mois
1 1 1 Janvier 31
32 32 2 Février 28/29
60 61 3 Mars 31
91 92 4 Avril 30
121 122 5 Mai 31
152 153 6 Juin 30
182 183 7 Juillet 31
213 214 8 Août 31
244 245 9 Septembre 30
274 275 10 Octobre 31
305 306 11 Novembre 30
335 336 12 Décembre 31

A l'aide du code source Pascal suivant, vous trouverez la réponse que vous souhaitez:

  1. Program FirstDayOfMonth; 
  2.  
  3. Function IsLeapYear(Year:Integer):Boolean;Begin
  4.  IsLeapYear:=((Year AND 3) = 0) AND ((Year MOD 100 <> 0) OR (Year MOD 400 = 0));
  5. End;
  6.  
  7. Function FirstDayOfMonth(Year,Month:Integer):Integer;
  8. Const
  9.  DayInMonth:Array[1..12]of Byte=(31,28,31,30,31,30,31,31,30,31,30,31);
  10. Var
  11.  NumberOfDay,I:Integer;
  12. Begin
  13.  NumberOfDay:=1;
  14.  For I:=1 to Month-1do Begin
  15.   If(I=2)and(IsLeapYear(Year))Then NumberOfDay := NumberOfDay + 1;
  16.   NumberOfDay := NumberOfDay + DayInMonth[I];
  17.  End;
  18.  FirstDayOfMonth:=NumberOfDay;
  19. End;
  20.  
  21. Var
  22.  Year,Month:Integer;
  23.  
  24. BEGIN
  25.  For Year:=2000 to 2001 do Begin
  26.   For Month:=1 to 12 do Begin
  27.    WriteLn('Année ',Year,', mois ',Month,', jour du premier du mois: ',FirstDayOfMonth(Year,Month));
  28.   End;
  29.  End;
  30. END.

on obtiendra le résultat suivant:

Année 2000, mois 1, jour du premier du mois: 1
Année 2000, mois 2, jour du premier du mois: 32
Année 2000, mois 3, jour du premier du mois: 61
Année 2000, mois 4, jour du premier du mois: 92
Année 2000, mois 5, jour du premier du mois: 122
Année 2000, mois 6, jour du premier du mois: 153
Année 2000, mois 7, jour du premier du mois: 183
Année 2000, mois 8, jour du premier du mois: 214
Année 2000, mois 9, jour du premier du mois: 245
Année 2000, mois 10, jour du premier du mois: 275
Année 2000, mois 11, jour du premier du mois: 306
Année 2000, mois 12, jour du premier du mois: 336
Année 2001, mois 1, jour du premier du mois: 1
Année 2001, mois 2, jour du premier du mois: 32
Année 2001, mois 3, jour du premier du mois: 60
Année 2001, mois 4, jour du premier du mois: 91
Année 2001, mois 5, jour du premier du mois: 121
Année 2001, mois 6, jour du premier du mois: 152
Année 2001, mois 7, jour du premier du mois: 182
Année 2001, mois 8, jour du premier du mois: 213
Année 2001, mois 9, jour du premier du mois: 244
Année 2001, mois 10, jour du premier du mois: 274
Année 2001, mois 11, jour du premier du mois: 305
Année 2001, mois 12, jour du premier du mois: 335

Voir également

ColdFusion - Référence de procédures et fonctions - FIRSTDAYOFMONTH

Dernière mise à jour : Mardi, le 25 octobre 2016