10 REM > Days3 20 REM calculates day of week 30 ON ERROR REPORT:PRINT " at line ";ERL:END 40 DIM monnum%(12),day$(6) 50 FOR m%=1 TO 12:READ monnum%(m%):NEXT 60 FOR d%=0 TO 6:READ day$(d%):NEXT 70 ON ERROR PROCerror 80 REPEAT 90 INPUT "Please enter the day of the month "date% 100 INPUT "Now enter month number (1-12) "mon% 110 INPUT "Now enter the year "year% 120 IF year%<40 year%+=100 130 IF year%<140 year%+=1900 140 IF year%<1900 OR year%>2099 THEN ERROR 1<<30,"Sorry, this program only works with years 1900 to 2099" 150 year%-=1900 160 leaps%=year% DIV 4 170 IF (year% MOD 4)=0 AND mon%<3 AND year%>0 THEN leaps%-=1 180 total%=year%+leaps%+monnum%(mon%)+date% 190 total%=total% MOD 7 200 PRINT '"That day was a "day$(total%) 210 PRINT '"Do you want another go (y/n)" 220 char$=GET$ 230 PRINT 240 UNTIL char$<>"Y" AND char$<>"y" 250 END 260 DATA 0,3,3,6,1,4,6,2,5,0,3,5 270 DATA Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday 280 : 290 DEFPROCerror 300 CASE ERR OF 310 WHEN 1<<30:PRINT'REPORT$' 320 OTHERWISE 330 REPORT:PRINT " at line ";ERL:END 340 ENDCASE 350 ENDPROC 360 :