From: jzakiya Date: 2010-06-03T01:50:07+09:00 Subject: Re: Square Root On May 29, 3:33 pm, Angus Hammond wrote: > Thanks I had tried require complex and Math::sqrt but only separately. > Thanks again. > Angus > > On 29/05/10 21:03, Jean-Julien Fleck wrote: > > > Hello Angus, > > > 2010/5/29 Angus Hammond: > > >> Is there a way to get an accurate square root? > >> This means that a negative number should return the appropriate complex > >> number. I have been having some trouble with this in a program that solves > >> quadratic equations recently. Ideally but not necessarily it should be able > >> to get the square root of complex numbers as well. > >> NB Neither -2**0.5 or Math::sqrt(-2) return appropriate answers. (-2 and an > >> error respectively) > > > require 'complex' > > include Math > > c = Complex(-2,0) > > sqrt(c) > > >>> require 'complex' > > > =>  true > > >>> include Math > > > =>  Object > > >>> c = Complex(-2,0) > > > =>  Complex(-2, 0) > > >>> sqrt(c) > > > =>  Complex(0.0, 1.4142135623731) > > > Cheers, > > FYI. For more extensive (and easy) way to add the ability to find the nth roots of all numerical types check out my Roots module here: http://gist.github.com/422636 Jabari