SumsAndSquares

Return sum and sum of squares of values.

Declaration

Source position: math.pp line 457

  procedure SumsAndSquares(const data: Array of Single; var sum: Float; 
                          var sumofsquares: Float);
  procedure SumsAndSquares(const data: PSingle; const N: Integer; 
                          var sum: Float; var sumofsquares: Float);
  procedure SumsAndSquares(const data: Array of Double; var sum: Float; 
                          var sumofsquares: Float);
  procedure SumsAndSquares(const data: PDouble; const N: Integer; 
                          var sum: Float; var sumofsquares: Float);
  procedure SumsAndSquares(const data: Array of Extended; var sum: Float; 
                          var sumofsquares: Float);
  procedure SumsAndSquares(const data: PExtended; const N: Integer; 
                          var sum: Float; var sumofsquares: Float);

Description

sumsandsquares calculates the sum of the values and the sum of the squares of the values in the data array and returns the results in sum and sumofsquares.

The second form of the function accepts a pointer to an array of N values.

Errors

None.

See also

Name Description
sum Return sum of values
sumofsquares Return sum of squares of values
totalvariance Return total variance of values
variance Return variance of values

Example

Program Example45;
{ Program to demonstrate the SumOfSquares function. }
{ @ should return typed pointer }
{$T+}
Uses math;
Var
  I : 1..100;
  ExArray : Array[1..100] of Float;
  s,ss : float;
begin
  Randomize;
  for I:=low(ExArray) to high(ExArray) do
    ExArray[i]:=(Random-Random)*100;
  Writeln('Max             : ',MaxValue(ExArray):8:4);
  Writeln('Min             : ',MinValue(ExArray):8:4);
  SumsAndSquares(ExArray,S,SS);
  Writeln('Sum             : ',S:8:4);
  Writeln('Sum squares     : ',SS:8:4);
  SumsAndSquares(@ExArray[1],100,S,SS);
  Writeln('Sum (b)         : ',S:8:4);
  Writeln('Sum squares (b) : ',SS:8:4);
end.