home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / misc / hamstuff / intermod.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-06-13  |  2.4 KB  |  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.