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 connaître 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 Turbo Pascal pour Windows suivant, vous trouverez la réponse que vous souhaitez :

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