program FileAndArrayWithStdDev;
uses Math; // sqrt を使うため
const
MaxData = 100;
var
Data: array[1..MaxData] of Real;
i, n: Integer;
Sum, Mean, Variance, StdDev: Real;
begin
Readln(n); // データの個数
if (n < 1) or (n > MaxData) then
begin
Writeln('データ数が不正です(1~', MaxData, ')');
Halt;
end;
// データの読み込みと合計の計算
Sum := 0;
for i := 1 to n do
begin
Read(Data[i]);
Sum := Sum + Data[i];
end;
// 平均値の計算
Mean := Sum / n;
// 分散の計算
Variance := 0;
for i := 1 to n do
Variance := Variance + Sqr(Data[i] - Mean);
Variance := Variance / n;
// 標準偏差の計算
StdDev := Sqrt(Variance);
// 結果の表示
Writeln('データの個数: ', n);
Writeln('平均値: ', Mean:0:2);
Writeln('標準偏差: ', StdDev:0:2);
end.
cHJvZ3JhbSBGaWxlQW5kQXJyYXlXaXRoU3RkRGV2Owp1c2VzIE1hdGg7ICAvLyBzcXJ0IOOCkuS9v+OBhuOBn+OCgQoKY29uc3QKICBNYXhEYXRhID0gMTAwOwoKdmFyCiAgRGF0YTogYXJyYXlbMS4uTWF4RGF0YV0gb2YgUmVhbDsKICBpLCBuOiBJbnRlZ2VyOwogIFN1bSwgTWVhbiwgVmFyaWFuY2UsIFN0ZERldjogUmVhbDsKCmJlZ2luCiAgUmVhZGxuKG4pOyAgLy8g44OH44O844K/44Gu5YCL5pWwCiAgaWYgKG4gPCAxKSBvciAobiA+IE1heERhdGEpIHRoZW4KICBiZWdpbgogICAgV3JpdGVsbign44OH44O844K/5pWw44GM5LiN5q2j44Gn44GZ77yIMe+9nicsIE1heERhdGEsICfvvIknKTsKICAgIEhhbHQ7CiAgZW5kOwoKICAvLyDjg4fjg7zjgr/jga7oqq3jgb/ovrzjgb/jgajlkIjoqIjjga7oqIjnrpcKICBTdW0gOj0gMDsKICBmb3IgaSA6PSAxIHRvIG4gZG8KICBiZWdpbgogICAgUmVhZChEYXRhW2ldKTsKICAgIFN1bSA6PSBTdW0gKyBEYXRhW2ldOwogIGVuZDsKCiAgLy8g5bmz5Z2H5YCk44Gu6KiI566XCiAgTWVhbiA6PSBTdW0gLyBuOwoKICAvLyDliIbmlaPjga7oqIjnrpcKICBWYXJpYW5jZSA6PSAwOwogIGZvciBpIDo9IDEgdG8gbiBkbwogICAgVmFyaWFuY2UgOj0gVmFyaWFuY2UgKyBTcXIoRGF0YVtpXSAtIE1lYW4pOwoKICBWYXJpYW5jZSA6PSBWYXJpYW5jZSAvIG47CgogIC8vIOaomea6luWBj+W3ruOBruioiOeulwogIFN0ZERldiA6PSBTcXJ0KFZhcmlhbmNlKTsKCiAgLy8g57WQ5p6c44Gu6KGo56S6CiAgV3JpdGVsbign44OH44O844K/44Gu5YCL5pWwOiAnLCBuKTsKICBXcml0ZWxuKCflubPlnYflgKQ6ICcsIE1lYW46MDoyKTsKICBXcml0ZWxuKCfmqJnmupblgY/lt646ICcsIFN0ZERldjowOjIpOwplbmQuCg==