10 PRINT "{CLEAR} *** DAYS SINCE THE BIRTH OF BASIC ***" 20 DEF FNLP(Y)=Y-INT(Y/4)*4=0 AND (Y-INT(Y/100)*100<>0 OR Y-INT(Y/1000)*1000=0) 30 DIM MD(12):FOR I=1 TO 12:READ MD(I):NEXT 40 D=0:Y1=1964:M1=5:D1=1 50 GOSUB 300 60 PRINT "{DOWN}DATE #1: 1964-05-01" 70 PRINT "DATE #2: ";Y$;"-";M$;"-";D$ 80 PRINT "{DOWN}COMPUTING..."; 90 D=D2-D1 100 FOR Y=Y1 TO Y2 110 PRINT "."; 130 IF Y=Y1 OR Y=Y2 THEN GOTO 180 140 D=D+365:IF FNLP(Y) THEN D=D+1 150 NEXT Y 160 PRINT:PRINT:PRINT D;"DAYS OF BASIC!" 170 END 180 MS=1:ME=12:F=0 190 IF Y=Y1 THEN MS=M1 200 IF Y=Y2 THEN ME=M2-1 210 FOR M=MS TO ME 220 D=D+MD(M) 240 IF M=2 AND LP THEN D=D+1 250 NEXT M 260 GOTO 150 300 PRINT "{DOWN}TODAY'S DATE:" 310 INPUT "YEAR 0{LEFT}{LEFT}{LEFT}";Y2:Y2=INT(Y2) 320 IF Y2<1965 THEN PRINT "-YEAR MUST BE GREATER THAN 1964.":GOTO 310 330 IF Y2<3000 THEN 360 340 PRINT "-ARE YOU KIDDING?":PRINT "IF IT'S REALLY THE YEAR";Y2; 350 PRINT "{LEFT}, WE HAVE":PRINT "STOPPED USING COMPUTERS FOR QUITE A":PRINT "WHILE NOW.":GOTO 310 360 INPUT "MONTH 0{LEFT}{LEFT}{LEFT}";M2:M2=INT(M2) 370 IF M2<1 OR M2>12 THEN PRINT "-MONTH MUST BE IN 1 - 12.":GOTO 360 380 ME=MD(M2) 390 IF M2=2 AND FNLP(Y2) THEN ME=ME+1 400 INPUT "DAY 0{LEFT}{LEFT}{LEFT}";D2:D2=INT(D2) 410 IF D2<1 OR D2>ME THEN PRINT "-DAY MUST BE IN 1 -";ME;"{LEFT}.":GOTO 400 420 Y$=STR$(Y2):Y$=MID$(Y$,2,LEN(Y$)-1) 430 M$=STR$(M2):M$=MID$(M$,2,LEN(M$)-1):IF M2<10 THEN M$="0"+M$ 440 D$=STR$(D2):D$=MID$(D$,2,LEN(D$)-1):IF D2<10 THEN D$="0"+D$ 450 RETURN 500 DATA 31,28,31,30,31,30 510 DATA 31,31,30,31,30,31