home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / pascal / library / dos / sampler / 01 / curves / sample4.inc < prev    next >
Encoding:
Text File  |  1988-09-03  |  5.3 KB  |  176 lines

  1. {
  2.                        F i l e    I n f o r m a t i o n
  3.  
  4. * DESCRIPTION
  5. Include source code file for curve.
  6.  
  7. * ASSOCIATED FILES
  8. CURVE.PAS
  9. ASSAY.TXT
  10. CURVE.COM
  11. CURVE4.EXE
  12. CURVE4.PAS
  13. PRINTOUT.INC
  14. PT.LAS
  15. README
  16. SAMPLE.INC
  17. SAMPLE2.INC
  18. SAMPLE4.INC
  19. SAMPLE4B.INC
  20. SPACER.INC
  21. TOOLS.INC
  22. TOOLS4.INC
  23.  
  24. }
  25.  
  26. {      SAMPLE4.INC   COMPILES WITH CURVE4.PAS  UNDER TURBO PASCAL VERSION 4.0 }
  27.  
  28. PROCEDURE DEGUB2(FIT : INTEGER);
  29.     BEGIN
  30.    WRITELN;
  31.       WRITELN; INVERSE;
  32.       WRITE('**====== DEBUGGER ======**');
  33.       WRITELN;
  34.       WRITELN('SLOPE  ',FIT,' - ',M[FIT]:2:2);
  35.       WRITELN('Y-INTERCEPT  ',FIT,'  -  ',B[FIT]:2:2);
  36.       WRITELN;
  37.     PAUSE
  38. END;
  39.  
  40. PROCEDURE X_SINGLE_SAMPLE(TOTAL : INTEGER; FIT : INTEGER);
  41.    VAR
  42.      SAMPLE, IOCODE : INTEGER;
  43.      XV, YV, DIL : ARRAY[1..50] OF REAL;
  44.      SPECIMEN : ARRAY[1..50] OF STR25;
  45.  
  46.    BEGIN
  47.      CLRSCR;
  48.        FOR SAMPLE :=1 TO TOTAL DO BEGIN
  49.          INVERSE; WRITE('SPECIMEN NAME ? '); NO_inverse;
  50.              READLN(SPECIMEN[SAMPLE]);
  51.              WRITELN;
  52.            WRITE('INPUT TEST X ? ');
  53.            REPEAT
  54.            {$I-} READLN(XV[SAMPLE]);
  55.            {$I+} IOCODE := IORESULT;
  56.            IF IOCODE <> 0 THEN WRITELN('BAD INPUT!  try 0.number ');
  57.            UNTIL IOCODE = 0; WRITELN;
  58.              WRITE('ENTER DILUTION FACTOR [ und = 1 ] ');
  59.              READLN(DIL[SAMPLE]);
  60.              WRITELN
  61.            END;
  62.            { DISPLAY & COMPUTATIONS }
  63.            CASE FIT OF
  64.            1 : BEGIN
  65.                  FOR SAMPLE := 1 TO TOTAL DO BEGIN
  66.                    YV[SAMPLE] := B[FIT] + (M[FIT] * XV[SAMPLE] );
  67.                    YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  68.                 WRITE('#',SAMPLE,'  ');
  69.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  70.             END;
  71.             PAUSE;
  72.             { DEBUG2(1) }
  73.           END;
  74.           2 : BEGIN
  75.                 FOR SAMPLE := 1 TO TOTAL DO BEGIN
  76.                 YV[SAMPLE] := B[FIT] * SQR(XV[SAMPLE] * M[FIT]);
  77.                 YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  78.               WRITE('#',SAMPLE,'  ');
  79.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  80.             END;
  81.             PAUSE
  82.           END;
  83.           3 : BEGIN
  84.                 FOR SAMPLE := 1 TO TOTAL DO BEGIN
  85.                 YV[SAMPLE] := B[FIT] + (M[FIT] * LN(XV[SAMPLE]));
  86.                 YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  87.               WRITE('#',SAMPLE,'  ');
  88.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  89.             END;
  90.             PAUSE
  91.           END;
  92.           4 : BEGIN
  93.                 FOR SAMPLE := 1 TO TOTAL DO BEGIN
  94.                 YV[SAMPLE] := B[FIT] * EXP(M[FIT] * XV[SAMPLE]);
  95.                 YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  96.               WRITE('#',SAMPLE,'  ');
  97.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE])
  98.             END;
  99.             PAUSE
  100.           END;
  101.           END (* CASE *)
  102.  
  103. END;
  104.  
  105. PROCEDURE X_PAIRED_SAMPLE(TOTAL : INTEGER; FIT : INTEGER);
  106.    VAR
  107.      SAMPLE, IOCODE : INTEGER;
  108.      XV1, XV2, XV, YV, DIL : ARRAY[1..50] OF REAL;
  109.      SPECIMEN : ARRAY[1..50] OF STR25;
  110.  
  111.    BEGIN
  112.      CLRSCR;
  113.       FOR SAMPLE := 1 TO TOTAL DO BEGIN
  114.         WRITE('SPECIMEN NAME ? ');
  115.         READLN(SPECIMEN[SAMPLE]);
  116.       WRITELN;
  117.       WRITE('ENTER TEST X1 ');
  118.         REPEAT
  119.            {$I-} READLN(XV1[SAMPLE]);
  120.            {$I+} IOCODE := IORESULT;
  121.            IF IOCODE <> 0 THEN WRITELN('BAD INPUT!  try 0.number ');
  122.            UNTIL IOCODE = 0; WRITELN;
  123.           WRITE('ENTER TEST X2 ');
  124.           REPEAT
  125.            {$I-} READLN(XV2[SAMPLE]);
  126.            {$I+} IOCODE := IORESULT;
  127.            IF IOCODE <> 0 THEN WRITELN('BAD INPUT!  try 0.number ');
  128.            UNTIL IOCODE = 0; WRITELN;
  129.               WRITE('ENTER DILUTION FACTOR [ UND = 1 ] ');
  130.               READLN(DIL[SAMPLE]);
  131.             WRITELN;
  132.             XV[SAMPLE] := (XV1[SAMPLE] + XV2[SAMPLE]) / 2
  133.           END;
  134.           { DISPLAY & COMPUTATION }
  135.       CASE FIT OF
  136.       1 : BEGIN
  137.             FOR SAMPLE := 1 TO TOTAL DO BEGIN
  138.               YV[SAMPLE] := B[FIT] + (M[FIT] * XV[SAMPLE] );
  139.               YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  140.             WRITE('#',SAMPLE,'  ');
  141.           WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  142.         END;
  143.         PAUSE
  144.       END;
  145.       2 : BEGIN
  146.             FOR SAMPLE := 1 TO TOTAL DO BEGIN
  147.               YV[SAMPLE] := B[FIT] * SQR(XV[SAMPLE] * M[FIT]);
  148.               YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  149.                WRITE('# ',SAMPLE,'  ');
  150.             WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  151.           END;
  152.           PAUSE
  153.         END;
  154.         3 : BEGIN
  155.               FOR SAMPLE := 1 TO TOTAL DO BEGIN
  156.                 YV[SAMPLE] := B[FIT] + M[FIT] * LN(XV[SAMPLE]);
  157.                 YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  158.               WRITE('# ',SAMPLE,'  ');
  159.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE]:2:2)
  160.             END;
  161.             PAUSE
  162.           END;
  163.           4 : BEGIN
  164.                 FOR SAMPLE := 1 TO TOTAL DO BEGIN
  165.                 YV [SAMPLE] := B[FIT] * EXP(M[FIT] * XV[SAMPLE]);
  166.                 YV[SAMPLE] := YV[SAMPLE] * DIL[SAMPLE];
  167.               WRITE('# ',SAMPLE,'  ');
  168.               WRITELN(SPECIMEN[SAMPLE],' = ',YV[SAMPLE])
  169.            END;
  170.            PAUSE
  171.          END;
  172.          END (* CASE *)
  173.  
  174. END;
  175. 
  176.