Re: local variables - Module, For loop
- To: mathgroup at smc.vnet.net
- Subject: [mg113064] Re: local variables - Module, For loop
- From: Sebastian Schmitt <sschmitt at physi.uni-heidelberg.de>
- Date: Tue, 12 Oct 2010 04:28:35 -0400 (EDT)
Hi Patrick!
Thanks for the suggestion. Does this scale to nested or very "long" For
loops? The Table will return a List in any case:
In[7]:= Table[, {i, 0, 10}]
Out[7]= {Null, Null, Null, Null, Null, Null, Null, Null, Null, Null, \
Null}
Cheers,
Sebastian
Patrick Scheibe wrote:
> Hi,
>
> then use Table, which is "more natural" and doesn't set the iterations variable.
>
> x = 10;
> Table[Print[i], {i, 0, x}];
>
> Cheers
> Patrick
>
> On Oct 11, 2010, at 11:15 AM, Sebastian Schmitt wrote:
>
>> Dear all!
>>
>> (I recycle my disclaimer.)
>>
>> I'm new to Mathematica with a background mostly in C++. Many times I
>> have the impression that my style is not natural-Mathematica
>> (Mathematicaesque so to say).
>>
>> If I have a For loop in a function like this:
>>
>> In[39]:= f[x_] := Module[{},
>> For[i = 0, i != x, i++,
>> Print[i]
>> ]
>> ]
>>
>> In[41]:= f[2]
>>
>> During evaluation of In[41]:= 0
>>
>> During evaluation of In[41]:= 1
>>
>> In[42]:= i
>>
>> Out[42]= 2
>>
>> I was surprised to find "i" being not local to the For loop. Do I have
>> to keep track of all my throw-away-variables and put them in the list of
>> local variables of the Module? I find it pretty tedious. Is there a
>> better way?
>>
>> Thanks in advance,
>>
>> Sebastian
>>
>
>