Re: Zero-based indexing option?
- To: mathgroup at smc.vnet.net
- Subject: [mg61720] Re: Zero-based indexing option?
- From: "Kevin J. McCann" <kjm at KevinMcCann.com>
- Date: Thu, 27 Oct 2005 05:01:50 -0400 (EDT)
- References: <djhssu$sio$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
How about something like this: A={1,2,3,4,5}; a-sub-i_ := A[[i-1]] where "-sub-i_" is a subscripted i_ (don't forget the underscore). This is not totally satisfactory, and you would need to actually keep two variables in play, but it works. Kevin Matt wrote: > Hello, > I am a C/C++ developer by trade and zero-based indexing is the norm. > When dealing with a set of objects, if I want to iterate over all of > them for some reason or another, I'm used to doing something like this: > > unsigned int ii(0); > while (ii < elementCount) > { > // do something > ++ii; > } > > where elementCount represents the number of elements in a set of > objects. In Mathematica, I'm getting into the habit of doing something > like this: > > iterations = Length[(* of something *)] ; > iterations++; > ii = 1; > While[ii < iterations, (* do something *); ii++] > > As you can see, I need to initialize my iterator to 1 and in order to > keep strictly 'less than' semantics, I need to increase the size of my > object set by one. This is not a big deal, and if I have no other > choice, I'll probably settle for setting the iterator to one and using > 'less than or equal' semantics for the loop constraint so I'm not > altering the size of the object set. > > However, it would be great if there were a Mathematica option or code > driven setting that would allow me to use zero-based indexing. Is > there such a thing? > > Thanks, > > Matt >