#! perl -slw use strict; use constant { X=>0, Y=>1, Z=>2, W=>3 }; my @first = ( -3.901, ,9.352, ,-1.557 ); my @last = ( -50.317, -4.262, -17.720 ); my @v = ( $last[X] - $first[X], $last[Y] - $first[Y], $last[Z] - $first[Z], ); my $l = sqrt( $v[X]**2 + $v[Y]**2 + $v[Z]**2 ); my @unitVec = map $_ / $l, @v; print "@unitVec"; __END__ [20:14:31.75] C:\test>unitVec.pl -0.910112639703537 -0.266939707793087 -0.316919824963984