summaryrefslogtreecommitdiff
path: root/info/maad/pgm4.bas
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /info/maad/pgm4.bas
Initial commit
Diffstat (limited to 'info/maad/pgm4.bas')
-rw-r--r--info/maad/pgm4.bas22
1 files changed, 22 insertions, 0 deletions
diff --git a/info/maad/pgm4.bas b/info/maad/pgm4.bas
new file mode 100644
index 0000000000..799fcf0bff
--- /dev/null
+++ b/info/maad/pgm4.bas
@@ -0,0 +1,22 @@
+100 DEFDBL A-H, O-Z
+110 INPUT "Number of points, Correlation Coefficient "; P, R
+130 IF (P < 4) THEN PRINT "Number of points too small": GOTO 110
+140 DEF FNA (x AS DOUBLE) = (1 - x * x) ^ ((P - 4!) / 2!)
+150 A = 0!: B = 1!: N = 256: SUM = 0!: H = (B - A) / N
+160 FOR I = 1 TO N STEP 2
+170 SUM = SUM + FNA(A + (I - 1) * H)
+180 SUM = SUM + 4! * FNA(A + I * H)
+190 SUM = SUM + FNA(A + (I + 1) * H)
+200 NEXT I: REM N = 256 gives accuracy to 5 decimal places.
+220 PSUM = SUM * H / 3!
+240 A = R: B = 1!
+250 SUM = 0!: H = (B - A) / N
+260 FOR I = 1 TO N STEP 2
+270 SUM = SUM + FNA(A + (I - 1) * H)
+280 SUM = SUM + 4! * FNA(A + I * H)
+290 SUM = SUM + FNA(A + (I + 1) * H)
+300 NEXT I
+310 RSUM = 100! * (SUM * H / 3!) / PSUM
+320 PRINT USING "Probability |r| >= r_0 is ##.#%"; RSUM
+
+