MathGroup Archive 2001

[Date Index] [Thread Index] [Author Index]

Search the Archive

Changing Pure Function in Module


Hi All,

thank you to all who continue to respond to all of my questions ... and there
are always plenty of them.

I have the following function embedded in the findD code below.

a[1] =5;

a[n_]:= a[n] = (-1)^(n+1) (Abs[a[n-1]]+2)

In[225]:=
findD[n_]:=
Module[{c=0},NestWhile[(c++;(-1)^c(Abs[#]+2))&,5,JacobiSymbol[#,n]!=-1&]]

I would like to change the pure function to use the following (cleaner) function
that requires no starting value (and starts for n = 1).

In[255]:=
a[n_]:= a[n]= (-1)^(n+1)*(2n + 3)

Also, it would be important to test n prior to calling findD.  If n is a perfect
square, findD will "never" converge.  Is there a simple way to test if n is
square and tell the user ... try again ... n is a perfect square.

Again thank you for all of the help ... Wilson




  • Prev by Date: Re: boolean operations for polygons
  • Next by Date: Comparison of Mathematica on Various Computers
  • Previous by thread: Re: Clearing cache
  • Next by thread: Re: Changing Pure Function in Module