Jump to content

Angles (geometric), normalization and conversion: Difference between revisions

→‎{{header|Wren}}: Removed an unnecessary formatting function.
(Added Wren)
(→‎{{header|Wren}}: Removed an unnecessary formatting function.)
Line 2,390:
var r2g = Fn.new { |r| r2r.call(r) * 200 / Num.pi }
var r2m = Fn.new { |r| r2r.call(r) * 3200 / Num.pi }
 
// Aligns number to decimal point assuming 7 characters before and after.
var s = Fn.new { |f| Fmt.g(15, f, 7) }
 
var f1 = "$15m $15m $15m $15m $15m"
var f2 = "$s15.7g $s15.7g $s15.7g $s15.7g $s15.7g"
var angles = [-2, -1, 0, 1, 2, 6.2831853, 16, 57.2957795, 359, 399, 6399, 1000000]
Fmt.print(f1, "degrees", "normalized degs", "gradians", "mils", "radians")
for (a in angles) {
Fmt.print(f2, s.call(a), s.call(d2d.call(a)), s.call(d2g.call(a)), s.call(d2m.call(a)), s.call(d2r.call(a)))
}
f1 = "\n" + f1
Fmt.print(f1, "gradians", "normalized grds", "degrees", "mils", "radians")
for (a in angles) {
Fmt.print(f2, s.call(a), s.call(g2g.call(a)), s.call(g2d.call(a)), s.call(g2m.call(a)), s.call(g2r.call(a)))
}
Fmt.print(f1, "mils", "normalized mils", "degrees", "gradians", "radians")
for (a in angles) {
Fmt.print(f2, s.call(a), s.call(m2m.call(a)), s.call(m2d.call(a)), s.call(m2g.call(a)), s.call(m2r.call(a)))
}
Fmt.print(f1, "radians", "normalized rads", "degrees", "gradians", "mils")
for (a in angles) {
Fmt.print(f2, s.call(a), s.call(r2r.call(a)), s.call(r2d.call(a)), s.call(r2g.call(a)), s.call(r2m.call(a)))
}</lang>
 
9,485

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.