Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2004
*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 2004

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

Search the Archive

Re: Using "Sum" (i = 1 ... N) in a function definition

  • To: mathgroup at smc.vnet.net
  • Subject: [mg49718] Re: Using "Sum" (i = 1 ... N) in a function definition
  • From: BobHanlon at aol.com
  • Date: Thu, 29 Jul 2004 07:43:41 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

Use SetDelayed (:=) in the definition of the function rather than Set (=)


MyData = {3,2,4,5,6};
 
MyFunc[i_] := Sum[MyData[[j]],{j,1,i}];


MyFunc /@ Range[Length[MyData]]


{3, 5, 9, 14, 20}


Bob Hanlon

> In a message dated Tue, 27 Jul 2004 11:11:21 +0000 (UTC), 
> wilhelm.rainer at gmx.net writes:  I was trying to define a function using the Sum 
> command in the
> following way (simplified example):
> 
>  MyData = {3,2,4,5,6};
>  MyFunc[i_] = Sum[MyData[[j]],{j,1,i}];
> 
> As you can see, the idea is to use the length of the list (i)
> as a variable in the function definition, such that
> 
>  MyFunc[1] = 3
>  MyFunc[2] = 3 + 2 = 5
>  MyFunc[3] = 3 + 2 + 4 = 9
> 
> etc. Mathematica does not like the abobe statements, and prints the
> following error message:
> 
> "Part specification K$394 is neither an integer nor a list of
> integers."
> 
> Does anybody know how to define (correctly) such a function. Should be
> possible ...?
> 


  • Prev by Date: Re: Using "Sum" (i = 1 ... N) in a function definition
  • Next by Date: Re: Using "Sum" (i = 1 ... N) in a function definition
  • Previous by thread: Re: Using "Sum" (i = 1 ... N) in a function definition
  • Next by thread: Re: Using "Sum" (i = 1 ... N) in a function definition