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 : Dimanche, le 18 janvier 2015