Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program asymmetry;
- {$APPTYPE CONSOLE}
- uses
- SysUtils, Math;
- type
- statArr = array[0..4] of double;
- function fillArray(range:integer): statArr;
- var fArray:statArr;
- i: integer;
- begin
- for i:= 0 to high(fArray) do
- fArray[i]:= RandomRange(0,range);
- // fArray[i]:= SimpleRoundTo(Random*range, -2);
- Result:= fArray;
- end;
- procedure printArray(tArray:statArr);
- var i:integer;
- begin
- for i:= 0 to high(tArray) do
- write(tArray[i]:2:2,' ');
- writeln;
- end;
- function GetStatNum(CurArray: statArr; average:double=0; pow:integer= 1): double;
- var i: integer;
- begin
- Result:= 0;
- for i:= 0 to high(CurArray) do
- Result:=Result + intPower((CurArray[i] - average), pow);
- Result:= Result / (high(CurArray)+1);
- end;
- var
- range: integer;
- Main: statArr;
- CentMom, Deviat,Kurtosis, Aver: double;
- begin
- Randomize;
- Write('random range: '); readln(range);
- Main := fillArray(range);
- write('Initial numbers: ') ;printArray(Main);
- Aver:= GetStatNum(Main);
- CentMom := GetStatNum(Main,Aver,4);
- Deviat:= sqrt(GetStatNum(Main, Aver, 2));
- Kurtosis := (CentMom / Power(Deviat,4)) - 3;
- writeln('Average: ', Aver:2:2, ', 4-Center Moment: ', centMom:2:2, ', Deviation: ', Deviat:2:2);
- Writeln('Kurtosis: ', SimpleRoundTo(Kurtosis,-3):3:3);
- Readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment