Section courante

A propos

Section administrative du site

Dans les pays occidentaux, il est inévitable de calculer la date de la Pâque chrétienne. Vous trouverez la réponse que vous souhaitez, à l'aide du code source Free Pascal suivant:

  1. Program DOE;
  2.  
  3. Procedure DateOfEaster(Year:Integer;Var Month,Day:Byte);
  4. Var
  5.  G,C,X,Z,D,E,N:Integer;
  6. Begin
  7.  G:=(Year mod 19) + 1;
  8.  C:=(Year div 100) + 1;
  9.  X:=((3 * C) div 4) - 12;
  10.  Z:=((8 * C + 5) div 25) - 5;
  11.  D:=((5 * Year) div 4) - X - 10;
  12.  E:=(11 * G + 20 + Z - X) MOD 30;
  13.  If E < 0 Then Inc(E,30);
  14.  If((E = 25) and (G > 11)) or (E = 24) Then Inc(E);
  15.  N:=44-E;
  16.  If N < 21 Then Inc(N,30);
  17.  Inc(N,7 - Integer((D + N) MOD 7));
  18.  If N > 31 Then Begin
  19.   Month := 4;
  20.   Day := N - 31;
  21.  End
  22.   Else
  23.  Begin
  24.   Month := 3;
  25.   Day := N;
  26.  End;
  27. End;
  28.  
  29. Function MonthName(Month:Byte):String;BEGIN
  30.  Case Month of
  31.   1:MonthName:='Janvier';
  32.   2:MonthName:='Février';
  33.   3:MonthName:='Mars';
  34.   4:MonthName:='Avril';
  35.   5:MonthName:='Mai';
  36.   6:MonthName:='Juin';
  37.   7:MonthName:='Juillet';
  38.   8:MonthName:='Août';
  39.   9:MonthName:='Septembre';
  40.   10:MonthName:='Octobre';
  41.   11:MonthName:='Novembre';
  42.   12:MonthName:='Décembre';
  43.  End;
  44. End;
  45.  
  46. Var
  47.  Year:Integer;
  48.  Month,Day:Byte;
  49.  
  50. BEGIN
  51.  For Year:=2000 to 2014 do Begin
  52.   DateOfEaster(Year, Month, Day);
  53.   WriteLn('Pâque en l''année ',Year,' est le jour ',Day,' du mois ',MonthName(Month));
  54.  End;
  55. END.

on obtiendra le résultat suivant :

Pâque en l'année 2000 est le jour 23 du mois Avril
Pâque en l'année 2001 est le jour 15 du mois Avril
Pâque en l'année 2002 est le jour 31 du mois Mars
Pâque en l'année 2003 est le jour 20 du mois Avril
Pâque en l'année 2004 est le jour 11 du mois Avril
Pâque en l'année 2005 est le jour 27 du mois Mars
Pâque en l'année 2006 est le jour 16 du mois Avril
Pâque en l'année 2007 est le jour 8 du mois Avril
Pâque en l'année 2008 est le jour 23 du mois Mars
Pâque en l'année 2009 est le jour 12 du mois Avril
Pâque en l'année 2010 est le jour 4 du mois Avril
Pâque en l'année 2011 est le jour 24 du mois Avril
Pâque en l'année 2012 est le jour 8 du mois Avril
Pâque en l'année 2013 est le jour 31 du mois Mars
Pâque en l'année 2014 est le jour 20 du mois Avril


Dernière mise à jour : Jeudi, le 29 décembre 2011