home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / misc / hamscan / imod2.bas < prev    next >
BASIC Source File  |  1987-03-25  |  3KB  |  83 lines

  1. 10 CLS 
  2. 20 PRINT :PRINT :PRINT :PRINT :PRINT 
  3. 30 PRINT "INTERMOD PROGRAM FOR UP TO REQUESTED NUMBER OF FREQUENCIES"
  4. 40 PRINT 
  5. 50 PRINT "       A MINIMUM OF 3 FREQUENCIES MUST BE ENTERED"
  6. 60 PRINT 
  7. 70 INPUT "          HOW MANY FREQUENCIES DO YOU WANT";N
  8. 80 CLS 
  9. 90 PRINT :PRINT :PRINT :PRINT 
  10. 100 DIM A(100)
  11. 110 DIM B(100),C(100),D(100)
  12. 120 FOR I=1 TO N
  13. 130 PRINT "FREQUENCY ",I,"";
  14. 140 INPUT A(I)
  15. 150 IF A(I)= 0 THEN 170
  16. 160 NEXT I
  17. 170 B=1:C=2:D=3
  18. 180 FOR Z=11 TO 200:NEXT Z
  19. 190 FOR S=1 TO N
  20. 200 FOR I=1 TO (N*N)
  21. 210 IF A(B)=A(C) OR  A(C)=A(D) OR A(B)=A(D) GOTO 410
  22. 220 A=(2*A(B))-A(C):B2=(2*A(C))-A(B)
  23. 230 C2=(3*A(B))-(2*A(C)):D2=(3*A(C))-(2*A(B))
  24. 240 E=A(B)+A(C)-A(D):F=A(C)+A(D)-A(B)
  25. 250 G=A(D)+A(B)-A(C):H=A(B)+(2*A(C))-(2*A(D))
  26. 260 I1=A(B)+(2*A(D))-(2*A(C)):J=A(C)+(2*A(B))-(2*A(D))
  27. 270 K=A(C)+(2*A(D))-(2*A(B))
  28. 280 L=A(D)+(2*A(B))-(2*A(C)):M=A(D)+(2*A(C))-(2*A(B))
  29. 290 A1=(2*A(B))+A(C):B1=(2*A(C))+A(B)
  30. 300 C1=(3*A(B))+(2*A(C)):D1=(3*A(C))+(2*A(B))
  31. 310 E1=A(B)+A(C)+A(D):F1=A(C)+A(D)+A(B)
  32. 320 G1=A(D)+A(B)+A(C):H1=A(B)+(2*A(D))
  33. 330 I2=A(C)+(2*A(D))+(2*A(C)):J1=A(C)+(2*A(B))+(2*A(D))
  34. 340 K1=A(C)+(2*A(D))+(2*A(B))
  35. 350 L1=A(D)+(2*A(B))+(2*A(C)):M1=A(D)+(2*A(C))+(2*A(B))
  36. 360 M=A(I+2)+(2*A(I+1))-(2*A(I))
  37. 370 CLS 
  38. 380 GOSUB 470
  39. 390 INPUT "PRESS 'ENTER' TO CONTINUE";V$
  40. 400 IF V$="" GOTO 410
  41. 410 C=C+1:D=D+1
  42. 420 NEXT I
  43. 430 B=B+1
  44. 440 C=1:D=2
  45. 450 NEXT S
  46. 460 GOTO 670
  47. 470 PRINT "2 - SIGNAL, 3RD ORDER PRODUCT OF";A(B);"AND";A(C)
  48. 480 PRINT "(-)     ",A,B2
  49. 490 PRINT "(+)     ",A1,B1
  50. 500 PRINT
  51. 510 PRINT "2 - SIGNAL, 5TH ORDER PRODUCT OF";A(B);"AND";A(C)
  52. 520 PRINT "(-)     ",C2,D2
  53. 530 PRINT "(+)     ",C1,D1
  54. 540 PRINT
  55. 550 IF A(D)=0 THEN RETURN
  56. 560 PRINT "3 - SIGNAL, 3RD ORDER PRODUCT OF";A(B);",";A(C);"AND";A(D)
  57. 570 PRINT "(-)     ",E,F,G
  58. 580 PRINT "(+)     ",E1,F1,G1
  59. 590 PRINT 
  60. 600 PRINT "3 - SIGNAL, 5TH ORDER PRODUCT OF";A(B);",";A(C);"AND";A(D)
  61. 610 PRINT "(-)     "H;I1;J;K;L;M
  62. 620 PRINT "(+)     "H1;I2;J1;K1;L1;M1
  63. 630 IF A(D)=0 THEN 650
  64. 640 RETURN
  65. 650 INPUT "PRESS 'ENTER' TO  CONTINUE";T$
  66. 660 IF T$="" GOTO 670
  67. 670 CLS :PRINT :PRINT :PRINT :PRINT :PRINT
  68. 680 PRINT "           COMPUTATIONS COMPLETE"
  69. 690 INPUT "           DO YOU WANT ANOTHER RUN";W$
  70. 700 IF W$= "YES" THEN RUN
  71. 710 END
  72. 720 A1=(2*A(I))+A(I+1))
  73. 730 C1=(3*A(I))+(2*A(I+1)):B1=(2*A(I+1))+A(I)
  74. 740 D1=(3*A(I+1))+(2*A(1)):E1=A(I)+A(I+1)+A(I+2)
  75. 750 F1=A(I+1)+A(I+2)+A(I)
  76. 760 G1=A(I+2)+A(I)+A(I+1):H1=A(I)+(2*A(I+1))+(2*A(I+2))
  77. 770 I2=A(I+1)+(2*A(I+2))+(2*A(I+1))
  78. 780 J1=A(I+1)+(2*A(I))+(2*A(I+2))
  79. 790 K1=A(I+1)+(2*A(I+2))+(2*A(I))
  80. 800 L1=A(I+2)+(2*A(I))+(2*A(I+1))
  81. 810 M1=A(I+2)+(2*A(I+1))+(2*A(I))
  82. 820 RETURN
  83.