34 lines
886 B
Text
34 lines
886 B
Text
Const PI# = 3.1415926535897932
|
|
|
|
ReDim angles1#(1 To 2)
|
|
angles1#(1) = 350
|
|
angles1#(2) = 10
|
|
|
|
ReDim angles2#(1 To 4)
|
|
angles2#(1) = 90
|
|
angles2#(2) = 180
|
|
angles2#(3) = 270
|
|
angles2#(4) = 360
|
|
|
|
ReDim angles3#(1 To 3)
|
|
angles3#(1) = 10
|
|
angles3#(2) = 20
|
|
angles3#(3) = 30
|
|
|
|
Print Using "Mean for angles 1 is : ####.## degrees"; MeanAngle#(angles1#())
|
|
Print Using "Mean for angles 2 is : ####.## degrees"; MeanAngle#(angles2#())
|
|
Print Using "Mean for angles 3 is : ####.## degrees"; MeanAngle#(angles3#())
|
|
End
|
|
|
|
Function MeanAngle# (angles#())
|
|
length# = UBound(angles#) - LBound(angles#) + 1
|
|
sinSum# = 0.0
|
|
cosSum# = 0.0
|
|
|
|
For i% = LBound(angles#) To UBound(angles#)
|
|
sinSum# = sinSum# + Sin(angles#(i%) * PI# / 180.0)
|
|
cosSum# = cosSum# + Cos(angles#(i%) * PI# / 180.0)
|
|
Next i%
|
|
|
|
MeanAngle# = _Atan2(sinSum# / length#, cosSum# / length#) * 180.0 / PI#
|
|
End Function
|