fork download
  1. program GradeStatistics;
  2.  
  3. uses Math;
  4.  
  5. const
  6. N = 10;
  7.  
  8. var
  9. score: array[1..N] of Real;
  10. sorted: array[1..N] of Real;
  11. deviation: array[1..N] of Real;
  12. i, j, pass: Integer;
  13. sum, avg, median, maxv, minv, std, temp: Real;
  14.  
  15. begin
  16. sum := 0;
  17. pass := 0;
  18.  
  19. for i := 1 to N do
  20. begin
  21. ReadLn(score[i]);
  22. sorted[i] := score[i];
  23. sum := sum + score[i];
  24.  
  25. if score[i] >= 60 then
  26. Inc(pass);
  27. end;
  28.  
  29. avg := sum / N;
  30.  
  31. maxv := score[1];
  32. minv := score[1];
  33.  
  34. for i := 2 to N do
  35. begin
  36. if score[i] > maxv then
  37. maxv := score[i];
  38. if score[i] < minv then
  39. minv := score[i];
  40. end;
  41.  
  42. for i := 1 to N - 1 do
  43. for j := i + 1 to N do
  44. if sorted[i] > sorted[j] then
  45. begin
  46. temp := sorted[i];
  47. sorted[i] := sorted[j];
  48. sorted[j] := temp;
  49. end;
  50.  
  51. median := (sorted[5] + sorted[6]) / 2;
  52.  
  53. std := 0;
  54. for i := 1 to N do
  55. std := std + Sqr(score[i] - avg);
  56.  
  57. std := Sqrt(std / N);
  58.  
  59. WriteLn('Average : ', avg:0:2);
  60. WriteLn('Median : ', median:0:2);
  61. WriteLn('Max : ', maxv:0:0);
  62. WriteLn('Min : ', minv:0:0);
  63. WriteLn('Std Dev : ', std:0:2);
  64. WriteLn('Pass : ', pass);
  65.  
  66. WriteLn;
  67. WriteLn('Deviation Values');
  68.  
  69. for i := 1 to N do
  70. begin
  71. if std <> 0 then
  72. deviation[i] := 50 + 10 * (score[i] - avg) / std
  73. else
  74. deviation[i] := 50;
  75.  
  76. WriteLn('Student ', i:2, ' : ', deviation[i]:0:2);
  77. end;
  78.  
  79. end.
Success #stdin #stdout 0.01s 5296KB
stdin
70
80
65
90
55
60
75
85
95
50
stdout
Average : 72.50
Median  : 72.50
Max     : 95
Min     : 50
Std Dev : 14.36
Pass    : 8

Deviation Values
Student  1 : 48.26
Student  2 : 55.22
Student  3 : 44.78
Student  4 : 62.19
Student  5 : 37.81
Student  6 : 41.30
Student  7 : 51.74
Student  8 : 58.70
Student  9 : 65.67
Student 10 : 34.33