Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!noose.ecn.purdue.edu!en.ecn.purdue.edu!ryoder From: ryoder@ecn.purdue.edu (Robert W Yoder) Newsgroups: comp.sys.handhelds Subject: Re: Unit Problems Solved! (Was:Re: Units Problems... Message-ID: <1990Sep26.190747.26768@ecn.purdue.edu> Date: 26 Sep 90 19:07:47 GMT References: <2237@charon.cwi.nl> <9682@ccncsu.ColoState.EDU> <1473@meaddata.meaddata.com> Organization: Purdue University Engineering Computer Network Lines: 51 In article <1473@meaddata.meaddata.com>, mead!johnt@uccba.uc.edu (John Townsend) writes: > > In article <9700@ccncsu.ColoState.EDU>, > > This reminds me of when I first got my HP-28C when I was in college. The first > thing I did with it was "acid-test" it by calculating the cube root of -27. > Every sixth-grader knows that the answer to this is simply -3, but most > calculators (including every TI I've ever seen) gag on it. Up to that time, > the only calculator I'd seen give me a correct answer was a Sharp EL506-P that > I'd gotten for about $10. Well, my $200 28C coughed out "(1.5,2.59807621135)". > "Bug!!!", I screamed. Fortunately, before I could send any hate mail to HP, > a friend of mine who was taking Complex Variables at the time reminded me that > I was actually solving a cubic equation, which always has THREE correct answers > in the complex number domain. Turns out that the 28C returns the first of > these (going around the complex plane counterclockwise from the X axis). The > other two solutions are (-3,0) and (1.5,-2.59807621135). The 28C will cube all > of these back into -27. That sure raised by opinion of HP in a hurry! This feature caused me enormous headaches when trying to debug a root solver sometime back. It never occured to me that a calculator might return a complex cube root. On the same topic, here is a program I wrote that finds ALL of the roots of any real or complex number and puts them on the stack in order, as they are arranged around the origin. To solve X^(1/N) = Y for Y: Input: level 2: X Input: level 1: N Output: roots in stack levels 1 to N RTCX << -> z0 n << z0 ABS n INV ^ z0 ARG n / (0,1) * EXP * (0,2) n / [pi] * EXP -> m a << 0 n 1 - FOR k a k ^ m * ->NUM ROUN ;ROUN is optional NEXT >> >> >> -- Robert Yoder 306 Hawkins Graduate House, West Lafayette, IN 47906 (317)495-6845 Internet: ryoder@ecn.purdue.edu "Flame all you want, We'll post more." UUCP: pur-ee!ryoder Apologies to Jay Leno & Doritos. Bitnet: ryoder@ecn.purdue.edu@purccvm.bitnet