UTY

Products: Utility Programs
Date: 198x
Type: Cassette
Platform(s): TS 1000

Program to calculate the day of the week given the current date, number of days between a date, and convert number to text.

Related Products

Program to calculate the day of the week given the current date, number of days between a date, and convert number to text.

Gallery

UTY

Source Code

  10 LET X=VAL N$(A)+18*(X1=1)
  15 DIM G$(9)
  20 FOR J=1 TO 9
  30 IF D$(X,J)=" " THEN GOTO 60
  40 LET G$(J)=D$(X,J)
  50 NEXT J
  60 LET H=J-1
  70 RETURN 
 500 CLS 
 505 SLOW 
 510 PRINT AT 18,0;"INPUT:"
 520 PRINT AT 19,0;"D=DAY OF WEEK"
 530 PRINT AT 20,0;"N=NUMBER OF DAYS BETWEEN"
 540 PRINT AT 21,0;"T=DOLLARS/CENTS TO TEXT"
 550 IF INKEY$="D" THEN GOTO 1000
 560 IF INKEY$="N" THEN GOTO 1500
 570 IF INKEY$="T" THEN GOTO 2000
 580 GOTO 510
1000 DIM B$(24)
1010 LET B$="  MONTUEWEDTHUFRISATSUN"
1020 CLS 
1022 PRINT "INPUT MONTH NUMBER=";
1024 INPUT M
1026 PRINT M
1030 PRINT "INPUT DAY NUMBER=";
1040 INPUT D
1050 PRINT D
1090 PRINT "INPUT YEAR (XXXX)=";
1100 INPUT Y
1110 PRINT Y
1120 LET Q=Y-(M<3)
1130 LET K=Q/100
1140 LET T=M+12*(M<3)
1150 LET R=INT (13*(T+1)/5)+INT (5*Q/4)-INT (K)+INT (K/4)+D+5
1160 LET R=R-(7*INT (R/7))+1
1165 PRINT 
1170 PRINT M;"/";D;"/";Y;"=";B$((R*3) TO (R*3)+2)
1180 GOTO 505
1500 CLS 
1510 PRINT "INPUT MONTH 1 NUMBER=";
1520 INPUT M1
1525 PRINT M1
1530 PRINT "INPUT DAY 1 NUMBER=";
1540 INPUT D1
1550 PRINT D1
1560 PRINT "INPUT YEAR 1 (XXXX)=";
1570 INPUT Y1
1575 PRINT Y1
1577 PRINT "INPUT MONTH 2 NUMBER=";
1578 INPUT M2
1580 PRINT M2
1590 PRINT "INPUT DAY 2 NUMBER=";
1600 INPUT D2
1605 PRINT D2
1610 PRINT "INPUT YEAR 2 (XXXX)=";
1620 INPUT Y2
1625 PRINT Y2
1630 LET Y=365*(Y2-Y1)
1640 LET M=31*(M2-M1)
1650 LET D=D2-D1
1660 LET X=INT ((.4*M2+2.3)*(M2>2))-INT ((.4*M1+2.3)*(M1>2))
1670 LET Z=INT ((Y2-(M2<=2))/4)-INT ((Y1-(M1<=2))/4)
1675 PRINT 
1680 PRINT "DAYS BETWEEN=";ABS (Y+M+D-X+Z)
1690 GOTO 505
2000 CLS 
2010 DIM D$(27,9)
2021 LET D$(1)="ONE"
2022 LET D$(2)="TWO"
2023 LET D$(3)="THREE"
2024 LET D$(4)="FOUR"
2025 LET D$(5)="FIVE"
2026 LET D$(6)="SIX"
2027 LET D$(7)="SEVEN"
2028 LET D$(8)="EIGHT"
2029 LET D$(9)="NINE"
2030 LET D$(10)="TEN"
2031 LET D$(11)="ELEVEN"
2032 LET D$(12)="TWELVE"
2033 LET D$(13)="THIRTEEN"
2034 LET D$(14)="FOURTEEN"
2035 LET D$(15)="FIFTHTEEN"
2036 LET D$(16)="SIXTEEN"
2037 LET D$(17)="SEVENTEEN"
2038 LET D$(18)="EIGHTEEN"
2039 LET D$(19)="NINETEEN"
2040 LET D$(20)="TWENTY"
2042 LET D$(21)="THIRTY"
2044 LET D$(22)="FORTY"
2050 LET D$(23)="FIFTY"
2060 LET D$(24)="SIXTY"
2070 LET D$(25)="SEVENTY"
2080 LET D$(26)="EIGHTY"
2090 LET D$(27)="NINETY"
2500 PRINT "ENTER AMOUNT=";
2510 INPUT N
2515 PRINT N
2520 IF N<10000 THEN GOTO 2550
2530 PRINT "NUMBER TOO LARGE"
2540 GOTO 2500
2550 IF N>=.01 THEN GOTO 2580
2560 PRINT "NO NEGATIVE NUMBERS"
2570 GOTO 2500
2580 LET N1=N
2590 LET N=INT (N*100+.001)
2600 LET N$=STR$ (N)
2605 LET L=LEN N$
2610 PRINT 
2620 PRINT "***";
2630 IF N>=100 THEN GOTO 2700
2631 LET A=1
2632 IF L=1 THEN GOTO 2648
2634 IF VAL N$(1)=0 THEN GOTO 2646
2636 IF VAL N$(1)<2 THEN GOTO 2654
2638 LET X1=1
2640 GOSUB 10
2642 PRINT G$(1 TO H);
2644 LET X1=0
2646 LET A=A+1
2648 GOSUB 10
2650 PRINT G$(1 TO H);
2652 GOTO 2680
2654 LET X=VAL N$(1 TO 2)
2656 GOSUB 15
2658 GOTO 2650
2680 PRINT " CENTS AND NO DOLLARS***"
2690 GOTO 505
2700 LET A=1
2705 LET X1=0
2710 GOTO 2620+(7-L)*100
2720 GOSUB 10
2730 PRINT G$(1 TO H);" THOUSAND ";
2740 LET A=A+1
2750 IF VAL N$(A)=0 THEN GOTO 2840
2820 GOSUB 10
2830 PRINT G$(1 TO H);" HUNDRED ";
2840 LET A=A+1
2850 IF VAL N$(A)=0 THEN GOTO 2950
2920 LET X1=1
2925 IF VAL N$(A)=1 THEN GOTO 3200
2930 GOSUB 10
2940 PRINT G$(1 TO H);" AND ";
2950 LET A=A+1
2960 LET X1=0
2990 IF VAL N$(A)=0 THEN GOTO 3040
3020 GOSUB 10
3030 PRINT G$(1 TO H);" AND ";
3040 LET A=A+1
3060 PRINT VAL N$(A);
3070 LET A=A+1
3075 IF VAL N$(A)=0 THEN GOTO 3100
3080 PRINT VAL N$(A);
3090 GOTO 3110
3100 PRINT "0";
3110 PRINT "/100 DOLLARS***"
3120 GOTO 505
3200 LET X=VAL N$(A TO A+1)
3210 GOSUB 15
3220 PRINT G$(1 TO H);" AND ";
3230 LET X1=0
3240 LET A=A+1
3250 GOTO 3040
9550 SAVE "UT%Y"
9555 LET A$="UTY"
9560 FAST 
9565 LET N=0
9570 FOR L=5 TO 19 STEP 7
9575 LET N=N+1
9580 LET C=CODE A$(N)
9585 FOR H=0 TO 7
9590 LET P=PEEK (7680+C*8+H)
9595 LET V=128
9600 FOR G=0 TO 7
9605 IF P<V THEN GOTO 9625
9610 PRINT AT H+3,G+L;"% "
9615 LET P=P-V
9620 GOTO 9630
9625 PRINT AT H+3,G+L;"\@@"
9630 LET V=V/2
9635 NEXT G
9640 NEXT H
9645 NEXT L
9650 PRINT " UTILITY PROGRAMS COPYRIGHT UAS"
9655 PRINT "BOX 612 HADDONFIELD, N.J. 08033"
9660 PAUSE 200
9670 CLS 
9680 GOTO 500

People

No people associated with this content.

Scroll to Top