summaryrefslogtreecommitdiff
path: root/info/drawing-with-metapost/src/basedate.mp
blob: f91c360894e4224a199785c6e03bd0c8cfa8643c (plain)
1
2
3
4
5
6
7
8
9
10
11
vardef base(expr Y, M, d) = 
    save m, y; numeric m, y;
    if M < 3:
        m = M + 9; 
        y = Y - 1;
    else:
        m = M - 3;
        y = Y;
    fi
    365/1024 y + (floor(y/4) - floor(y/100) + floor(y/400) + floor((2+3m)/5) + 30m + d - 307) / 1024
enddef;