Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2001
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2001

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

Search the Archive

Changing Pure Function in Module

  • To: mathgroup at smc.vnet.net
  • Subject: [mg29822] Changing Pure Function in Module
  • From: Flip at safebunch.com
  • Date: Thu, 12 Jul 2001 02:52:35 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

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