Days between dates: Difference between revisions

Content added Content deleted
(Added AutoHotkey)
(Days between dates en FreeBASIC)
Line 958: Line 958:
273
273
</pre>
</pre>


=={{header|FreeBASIC}}==
<lang freebasic>Dim Shared As Integer M, Y, D
Dim As Integer Y1, M1, D1, Y2, M2, D2, G1, G2
Dim As String DaysBetween(7, 2) = {{"1902-01-01","1968-12-25"}, _
{"2019-01-01","2019-01-02"}, {"2019-01-02","2019-01-01"}, _
{"2019-01-01","2019-03-01"}, {"2020-01-01","2020-03-01"}, _
{"1995-11-21","1995-11-21"}, {"2090-01-01","2098-12-25"}}

Function Gregorian() As Integer
Dim As Integer N = (M+9) - Int((M+9)/12) * 12
Dim As Integer W = Y - Int(N/10)
Dim As Integer G = 365 * W + Int(W/4) - Int(W/100) + Int(W/400)
G += Int((N*306+5)/10)+(D-1)
Return G
End Function

For n As Integer = 0 To Ubound(DaysBetween)-1
Y1 = Val(Left(DaysBetween(n,0),4))
M1 = Val(Mid(DaysBetween(n,0),6,2))
D1 = Val(Right(DaysBetween(n,0),2))
Y2 = Val(Mid(DaysBetween(n,1),1,4))
M2 = Val(Mid(DaysBetween(n,1),6,2))
D2 = Val(Mid(DaysBetween(n,1),9,2))
Y = Y1 : M = M1 : D = D1 : G1 = Gregorian
Y = Y2 : M = M2 : D = D2 : G2 = Gregorian
Print "Days between "; DaysBetween(n,0); " and "; DaysBetween(n,1); " is ";
Print Using "##### days"; (G2-G1)
Next n
Sleep</lang>
{{out}}
<pre>
Days between 1902-01-01 and 1968-12-25 is 24465 days
Days between 2019-01-01 and 2019-01-02 is 1 days
Days between 2019-01-02 and 2019-01-01 is -1 days
Days between 2019-01-01 and 2019-03-01 is 59 days
Days between 2020-01-01 and 2020-03-01 is 60 days
Days between 1995-11-21 and 1995-11-21 is 0 days
Days between 2090-01-01 and 2098-12-25 is 3280 days
</pre>



=={{header|Frink}}==
=={{header|Frink}}==