Advertisement
TerryChan

Untitled

Mar 28th, 2020
431
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.60 KB | None | 0 0
  1. type
  2.     Stroke = array of real;
  3. var
  4.     n : integer;
  5.     x, y : Stroke;
  6.     xs, ys, op1, op2, r: real;
  7.  
  8. procedure InputStroke(var a: Stroke; n: integer);
  9. var
  10.     i : integer;
  11. begin
  12.     write('Ввод массива: ');
  13.     SetLength(a, n);
  14.     for i := Low(a) to High(a) do
  15.         read(a[i]);
  16. end;
  17.  
  18. function AverageSum(const a: Stroke): real;
  19. var
  20.     S : real := 0;
  21.     i : integer;
  22.     n : integer := 0;
  23. begin
  24.     for i := Low(a) to High(a) do begin
  25.         S := S + a[i];
  26.         inc(n)
  27.     end;
  28.     AverageSum := S / n;
  29. end;
  30.  
  31. function FirstOperand(const x, y: Stroke; xs, ys: real): real;
  32. var
  33.     S : real := 0;
  34.     i : integer;
  35. begin
  36.     for i := Low(x) to High(x) do
  37.         S := S + (x[i] - xs)*(y[i] - ys);
  38.     FirstOperand := S;
  39. end;
  40.  
  41. function SecondOperand(const x, y: Stroke; xs, ys: real): real;
  42. var
  43.     S1 : real := 0;
  44.     S2 : real := 0;
  45.     i: integer;
  46. begin
  47.     S1 := FirstOperand(x, x, xs, xs);
  48.     S2 := FirstOperand(y, y, ys, ys);
  49.     SecondOperand := S1 * S2;
  50. end;
  51.  
  52. begin
  53.     write('Введите количество элементов массива x и y:');
  54.     readln(n);
  55.     InputStroke(x, n);
  56.     InputStroke(y, n);
  57.     xs := AverageSum(x);
  58.     ys := AverageSum(y);
  59.     op1 := FirstOperand(x,y,xs,ys);
  60.     op2 := SecondOperand(x,y,xs,ys);
  61.     r := op1/op2;
  62.     writeln('Для проверки вычислений:');
  63.     writeln('xs=',xs);
  64.     writeln('ys=', ys);
  65.     writeln('Делимое=', op1);
  66.     writeln('Делитель=', op2);
  67.     writeln('Коэффициент корреляции двух величин R=', r);
  68. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement