10 REM T-BILL CALCULATOR 20 REM THIS PROGRAM CALCULATES THE DOLLAR DISCOUNT AND BOND EQUIVALENT 30 REM YIELD FOR TREASURY BILLS 40 REM 50 REM INITIALIALIZE VARIABLES TO ZERO 60 PRINT CHR$(26) 70 F = 0:D = 0:T = 0:DI# = 0:PP# = 0:Y# = 0 80 MM = 0:DD = 0:YY = 0:D1 = 0:D2 = 0:N = 0:J = 0 90 PRINT "ENTER DEALERS QUOTED YIELD (IN %)"; 100 INPUT D# 110 PRINT 120 PRINT "ENTER FACE AMOUNT OR SECURITIES"; 130 INPUT F 140 PRINT 150 PRINT "ENTER QUOTE DATE" 160 PRINT "(E.G., 5,4,1983)"; 170 INPUT MM,DD,YY 180 GOSUB 490 190 D1 = N 200 PRINT 210 PRINT "DATE OF MATURITY"; 220 INPUT MM,DD,YY 230 GOSUB 490 240 D2 = N 250 T = (D2 - D1) 260 DI# = F * (D# / 100) * (T / 360) 270 DI# = INT(DI# * 100 + .5) / 100 280 PP# = F - DI# 290 IF T > 182 THEN 330 300 Y# = DI# / PP# * 365 / T * 100 310 Y# = INT(Y# * 100 + .5) / 100 320 GOTO 370 330 D# = D# /100 340 P# = 100 * (1 - D# *T/360)/100 350 Y#=((-2*T/365)+2*SQR((T/365)^2-(2*T/365-1)*(1-1/P#)))/(2*T/365-1) 360 Y#=INT(Y#*10000+.5)/100 370 PRINT 380 PRINT "THE DOLLAR DISCOUNT IS : $";DI# 390 PRINT 400 PRINT "THE PURCHASE PRICE IS : $";PP# 410 PRINT 420 PRINT "THE BOND-EQUIVALENT-YIELD IS (%)";Y# 430 PRINT 440 PRINT "ENTER 1 IF YOU WISH TO RUN THIS PROGRAM AGAIN." 450 PRINT "ENTER 2 TO QUIT"; 460 INPUT J 470 IF J = 1 THEN GOTO 60 480 IF J <> 1 THEN GOTO 580 490 REM SUBROUTINE TO COMPUTE THE NUMBER OF DAYS FROM FEB 28,1700. 500 REM THIS SUBROUTINE IS ACCURATE FROM MARCH 1, 1900 UNTIL FEB 28,2100 510 REM REF. HEWLET-PACKARD HP-25 APPLICATIONS MANUAL 520 IF INT(MM) > 2 THEN GOTO 550 530 YY = YY - 1 540 MM = MM + 13: GOTO 560 550 MM = MM + 1 560 N = INT(365.25 * YY) + INT(30.6 * MM) + DD - 621049! 570 RETURN 580 END