home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / etronic2 / progr10.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1988-10-27  |  3.6 KB  |  59 lines

  1. 1000  REM This program was written by John Wolfram using an IBM PS/2 MODEL 30
  2. 1001  REM Machine - Anyone is free to copy and use this program for any purpose
  3. 1002  REM Other than commercial uses. No guarantees to any accuracy are given or
  4. 1003  REM implied - in other words - you're on your own - copy and distribute at
  5. 1004  REM will - take this note out or leave it in - 10-15-1988
  6. 1005  CLS: KEY OFF: SCREEN 0:WIDTH 80
  7. 1006  DIM BD$(12)
  8. 1007  FOR L = 1 TO 12:READ BD$(L):NEXT
  9. 1008  CLS: LOCATE 10,20: PRINT "RESISTOR IDENTIFICATION PROGRAM"
  10. 1009  LOCATE 12,20: PRINT "OPTIONS AVAILABLE ARE --"
  11. 1010  LOCATE 14,25: PRINT "DETERMINE VALUE OF RESISTOR - A"
  12. 1011  LOCATE 16,25: PRINT "DETERMINE COLOR COMBINATION - B"
  13. 1012  LOCATE 25,30: INPUT "HIT PROPER KEY ",A$
  14. 1013  IF A$="A" OR A$="a" THEN 1014 ELSE IF A$="B" OR A$ = "b" THEN 1045 ELSE 1012
  15. 1014  CLS
  16. 1015  COLORS1$="      BROWN = 1  *  RED = 2  *  ORANGE = 3  *  YELLOW = 4  *  GREEN = 5                       BLUE = 6   *  VIOLET = 7  *  GREY = 8  *  WHITE = 9  "
  17. 1016  COLORS2$="BLACK = 0  *  BROWN = 1  *  RED = 2  *  ORANGE = 3  *  YELLOW = 4  *  GREEN = 5             BLUE = 6   *  VIOLET = 7  *  GREY = 8  *  WHITE = 9  "
  18. 1017  COLORS3$="BLACK = 0  *  BROWN = 1  *  RED = 2  *  ORANGE = 3  *  YELLOW = 4  *  GREEN = 5 BLUE = 6   *  VIO'T = 7  *  GREY = 8  *  WHITE = 9  * GOLD = -1  -  SILVER = -2"
  19. 1018  CLS:LOCATE 22,2:PRINT COLORS1$;
  20. 1019  LOCATE 10,10:INPUT;"ENTER NUMBER FOR COLOR OF 1ST STRIPE! ",A$
  21. 1020  IF A$="" OR LEN(A$)>1 THEN 1019 ELSE IF ASC(A$) <49 OR ASC(A$) >57 THEN 1019 ELSE 1021
  22. 1021  LOCATE 22,2:PRINT COLORS2$;
  23. 1022  LOCATE 12,10:INPUT;"ENTER NUMBER FOR COLOR OF 2ND STRIPE! ",B$
  24. 1023  IF B$="" OR LEN(B$)>1 THEN 1022 ELSE IF ASC(B$) <48 OR ASC(B$) >57 THEN 1022 ELSE 1024
  25. 1024  LOCATE 22,2:PRINT COLORS3$;
  26. 1025  LOCATE 14,10:INPUT;"ENTER NUMBER FOR COLOR OF 3RD STRIPE! ",C$
  27. 1026  IF VAL(C$) = -1 OR VAL(C$) = -2 OR VAL(C$)=0 THEN 1027 ELSE IF C$ = " " OR LEN(C$) >2 OR VAL(C$) <0.99 OR VAL(C$) >9 THEN 1025 ELSE 1027
  28. 1027  CLS:LOCATE 25,2:PRINT "AVAILABLE CHOICES ARE  -     GOLD = 1     SILVER = 2      NO COLOR = 3"
  29. 1028  LOCATE 5,10: INPUT "     FOURTH STRIPE - TOLERANCE STRIPE ",D$
  30. 1029  IF D$="" OR LEN(D$)>1 THEN 1028 ELSE IF ASC(D$) <49 OR ASC(D$) >51 THEN 1028 ELSE 1030
  31. 1030  CLS:LOCATE 10,1
  32. 1031  VALUE$=A$+B$:VALUE=VAL(VALUE$)      ' FIRST TWO DIGITS OF VALUE
  33. 1032  MULTIPLIER=10^VAL(C$)               ' NUMBER OF ZEROS
  34. 1033  IF VAL(D$)=3 THEN TOLERANCE$="20"
  35. 1034  IF VAL(D$)=1 THEN TOLERANCE$=" 5"
  36. 1035  IF VAL(D$)=2 THEN TOLERANCE$="10"
  37. 1036  PRINT "RESISTANCE RATED @                 ";
  38. 1037  PRINT USING "###,###,###,###.## OHMS";VALUE*MULTIPLIER
  39. 1038  PRINT "TOLERANCE RANGE IS                 ";
  40. 1039  PRINT USING "            ###    %  ";VAL(TOLERANCE$)
  41. 1040  PRINT
  42. 1041  PRINT "READING SHOULD NOT EXCEED          ";:TOLH=VALUE*MULTIPLIER+((VALUE*MULTIPLIER)*(VAL(TOLERANCE$)/100)):PRINT USING "###,###,###,###.## OHMS";TOLH
  43. 1042  PRINT "              OR BE BELOW          ";:TOLL=VALUE*MULTIPLIER-((VALUE*MULTIPLIER)*(VAL(TOLERANCE$)/100)):PRINT USING "###,###,###,###.## OHMS";TOLL
  44. 1043  LOCATE 25,20: INPUT "MORE CALCULATIONS (Y/N)",X$
  45. 1044  IF X$="Y" OR X$="y" THEN RUN 1000 ELSE IF X$="N" OR X$="n" THEN CLS:END
  46. 1045  CLS
  47. 1046  LOCATE 6,20:PRINT"THIS SECTOR WILL PICK THE COLORS FOR YOU"
  48. 1047  LOCATE 8,20:PRINT"ENTER VALUE IN OHMS THAT YOU ARE LOOKING FOR"
  49. 1048  LOCATE 10,20:PRINT"LESS THAN 100,000,000  AND MORE THAN .01"
  50. 1049  LOCATE 12,20:INPUT"ENTER FIRST TWO DIGITS ";N$
  51. 1050  IF N$="" OR LEN(N$)>2 THEN 1049 ELSE IF ASC(LEFT$(N$,1)) <0 OR ASC(LEFT$(N$,2)) <0 OR ASC(LEFT$(N$,1)) >57 OR ASC(LEFT$(N$,2)) >57 THEN 1049 ELSE 1051
  52. 1051  LOCATE 14,1:PRINT"                        ENTER NUMBER OF ZEROS                                                           CAN BE NEGATIVE 2 TO PLUS 8 ";:INPUT"",MULTIPLE$: PRINT
  53. 1052  IF ASC(RIGHT$(MULTIPLE$,1)) <48 OR ASC(RIGHT$(MULTIPLE$,1)) >57 OR LEN(MULTIPLE$) >2 OR VAL(MULTIPLE$) < -2 THEN 1051 ELSE MULTIPLIER=VAL(MULTIPLE$): GOTO 1054
  54. 1053  DATA SILVER,GOLD,BLACK,BROWN,RED,ORANGE,YELLOW,GREEN,BLUE,VIOLET,GREY,WHITE
  55. 1054  PRINT TAB(20) "1st STRIPE - ";:EXPO=VAL(LEFT$(N$,1))+3:PRINT BD$(EXPO)
  56. 1055  PRINT TAB(20) "2nd STRIPE - ";:EXPO=VAL(RIGHT$(N$,1))+3:PRINT BD$(EXPO)
  57. 1056  PRINT TAB(20) "3rd STRIPE - ";:EXPO=VAL(MULTIPLE$)+3:PRINT BD$(EXPO)
  58. 1057  GOTO 1043
  59.