A large commit.
[pdp8.git] / sw / src / pascal / SUMMIN.PS
CommitLineData
81e70d48
PH
1PROGRAM SUMMING(OUTPUT);
2
3 (* COMPUTE 1 - 1/2 + 1/3-...+1/9999 - 1/10000 , 4 WAYS.
4 1) LEFT TO RIGHT, IN SUCCESSION
5 2) LEFT TO RIGHT, ALL POS AND NEG TERMS, THEN SUBTRACT
6 3) RIGHT TO LEFT IN SUCCESSION
7 4) RIGHT TO LEFT, ALL POS AND NEG TERMS, THEN SUBTRACT*)
8
9VAR S1,S2P,S2N,S3,S4P,S4N,LRP,LRN,RLP,RLN : REAL;
10I : INTEGER;
11BEGIN S1 := 0; S2P := 0; S2N := 0; S3 := 0; S4P := 0; S4N := 0;
12 FOR I := 1 TO 5000 DO
13 BEGIN
14 LRP := 1/(2*I-1); (* POS TERMS, LEFT TO RIGHT *)
15 LRN := 1/(2*I); (* NEG TERMS, LEFT TO RIGHT *)
16 RLP := 1/(10001-2*I); (* POS TERMS, RIGHT TO LEFT *)
17 RLN := 1/(10002-2*I); (* NEG TERMS, RIGHT TO LEFT *)
18 S1 := S1 + LRP - LRN;
19 S2P := S2P + LRP; S2N := S2N + LRN;
20 S3 := S3 + RLP - RLN;
21 S4P := S4P + RLP; S4N := S4N + RLN
22 END;
23 WRITELN(S1,S2P-S2N);
24 WRITELN(S3,S4P-S4N)
25END.