Averages/Median: Difference between revisions
Content added Content deleted
(Added XPL0 example.) |
|||
Line 4,062: | Line 4,062: | ||
2.1 |
2.1 |
||
2.1 |
2.1 |
||
</pre> |
|||
=={{header|XPL0}}== |
|||
<syntaxhighlight lang "XPL0">func real Median(Size, Array); \Return median value of Array |
|||
int Size; real Array; |
|||
int I, J, MinJ; |
|||
real Temp; |
|||
[for I:= 0 to Size/2 do \partial selection sort |
|||
[MinJ:= I; |
|||
for J:= I+1 to Size-1 do |
|||
if Array(J) < Array(MinJ) then MinJ:= J; |
|||
Temp:= Array(I); Array(I):= Array(MinJ); Array(MinJ):= Temp; |
|||
]; |
|||
if rem(Size/2) = 1 then return Array(Size/2) |
|||
else return (Array(Size/2-1) + Array(Size/2)) / 2.; |
|||
]; |
|||
[RlOut(0, Median(3, [5.0, 3.0, 4.0])); CrLf(0); |
|||
RlOut(0, Median(8, [3.0, 4.0, 1.0, -8.4, 7.2, 4.0, 1.0, 1.2])); CrLf(0); |
|||
]</syntaxhighlight> |
|||
{{out}} |
|||
<pre> |
|||
4.00000 |
|||
2.10000 |
|||
</pre> |
</pre> |
||