#include "libstd" proc main() { var mat = [ [ [1.,0.,-1.], [1.,1.,-1.], [0.,1.,-1.], [-1.,1.,-1.], [-1.,0.,-1.], [-1.,-1.,-1.], [0.,-1.,-1.], [1.,-1.,-1.] ],[ [1.,0.,0.], [1.,1.,0.], [0.,1.,0.], [-1.,1.,0.], [-1.,0.,0.], [-1.,-1.,0.], [0.,-1.,0.], [1.,-1.,0.] ],[ [1.,0.,1.], [1.,1.,1.], [0.,1.,1.], [-1.,1.,1.], [-1.,0.,1.], [-1.,-1.,1.], [0.,-1.,1.], [1.,-1.,1.] ] ]; var pol = mat.polar(); var cart = pol.cartesian(); print("3(I2,X),F8.5,X,2(I4,X),3(I2,X)", Int(mat.round()), pol[:,:,0], Int((pol[:,:,1:]*180.0/math::PI).round()), Int(cart.round())); }