|
Autrefois, système de mesure pour les phases lunaires, il devient par la suite un instrument de
mesure pour s'immortalisé avec les empereurs romains Jules César et Auguste, il s'agit bien sure
du calendrier.
Bien qu'à l'origine on utilisait un calendrier Julien,
on utilise maintenant le calendrier grégorien.
A l'aide du code source LotusScript suivant, vous trouverez un calendrier grégorien correspondant à la réponse que vous souhaitez:
Function IsLeapYear(Byval Yr As Integer) As Integer
IsLeapYear = ((Yr And 3) = 0) And ((Yr Mod 100 <> 0) Or (Yr Mod 400 = 0))
End Function
Function DateToDayOfWeek(Y As Integer,M As Integer,D As Integer) As Integer
Dim T0 As Integer
Dim T1 As Integer
Dim T2 As Integer
Dim Total As Integer
If(M > 12) Or (0 = M) Or (0 = D)Then DateToDayOfWeek=0:Exit Function
If Y < 0 Then Y = y + 1
T0 = Int(0.6 + 1 / M)
T1 = M + 12 * T0
T2 = Y - T0
Total = Int(13 * (T1 + 1) / 5) + Int(5 * T2 / 4) - Int(T2 / 100) + Int(T2 / 400) + D - 1
DateToDayOfWeek = Total - 7 * Int(Total / 7)
End Function
Sub PutCalendar(Yr As Integer,Mh As Integer,Dy As Integer)
Dim Days(1 To 12) As Integer
Dim D As Integer
Days(1) = 31
Days(2) = 28
Days(3) = 31
Days(4) = 30
Days(5) = 31
Days(6) = 30
Days(7) = 31
Days(8) = 31
Days(9) = 30
Days(10) = 31
Days(11) = 30
Days(12) = 31
If IsLeapYear(Yr)Then Days(2) = 29
D = DateToDayOfWeek(Yr, Mh, 1)
Print "Diman Lundi Mardi Mercr Jeudi Vendr Samed"
Print Space$(6 * D);
For I = 1 To Days(Mh)
If I < 10 Then Print " ";
Print Str$(I) &Space$(4);
If(0 = (D + I) Mod 7) Then Print
Next
Print
Print
End Sub
Function MonthName(Mh As Integer) As String
Select Case Mh
Case 1:MonthName="Janvier"
Case 2:MonthName="Février"
Case 3:MonthName="Mars"
Case 4:MonthName="Avril"
Case 5:MonthName="Mai"
Case 6:MonthName= "Juin"
Case 7:MonthName="Juillet"
Case 8:MonthName="Août"
Case 9:MonthName= "Septembre"
Case 10:MonthName= "Octobre"
Case 11:MonthName= "Novembre"
Case 12:MonthName="Décembre"
Case Else: MonthName=""
End Select
End Function
Sub Main()
Dim I As Integer
For I = 1 To 12
Print MonthName(I) &" 2008"
Print
Call PutCalendar(2008, I, 3)
Next
End Sub
|
on obtiendra le résultat suivant:
Janvier 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Février 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29
Mars 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Avril 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Mai 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Juin 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Juillet 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Août 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Septembre 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Octobre 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Novembre 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
Décembre 2008
Diman Lundi Mardi Mercr Jeudi Vendr Samed
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
|
|
|
| Dernière mise à jour: Mardi, le 7 février 2006 |