Re: How to simplify this code with variable number of
- To: mathgroup at smc.vnet.net
- Subject: [mg124316] Re: How to simplify this code with variable number of
- From: Bob Hanlon <hanlonr357 at gmail.com>
- Date: Mon, 16 Jan 2012 17:15:23 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201201150951.EAA19677@smc.vnet.net>
iter[0] = {a[0], 1, 1}; iter[n_Integer?Positive] = {a[n], a[n - 1] + 1, 2 n - 1}; g = 2; Table[f @@ Table[a[k], {k, 0, g}], Evaluate[Sequence @@ Table[iter[k], {k, 0, g}]]] // Flatten[#, g] & {} The iterators upper bounds are lower than the corresponding lower bounds, so the iterations are empty With a different definition for the iterators iter[n_Integer?Positive] = {a[n], a[n - 1], 2 n - 1}; Table[f @@ Table[a[k], {k, 0, g}], Evaluate[Sequence @@ Table[iter[k], {k, 0, g}]]] // Flatten[#, g] & {f[1, 1, 1], f[1, 1, 2], f[1, 1, 3]} Or iter[n_Integer?Positive] = {a[n], a[n - 1] + 1, 2 n + 1}; Table[f @@ Table[a[k], {k, 0, g}], Evaluate[Sequence @@ Table[iter[k], {k, 0, g}]]] // Flatten[#, g] & {f[1, 2, 3], f[1, 2, 4], f[1, 2, 5], f[1, 3, 4], f[1, 3, 5]} Bob Hanlon On Sun, Jan 15, 2012 at 4:51 AM, Rex <aoirex at gmail.com> wrote: > Considering an array a[i], i=0,1,...,g, where g could be any given > number, and a[0]=1. > > for a[1]=a[0]+1 to 1 do > for a[2]=a[1]+1 to 3 do > for a[3]=a[2]+1 to 5 do > ...... > for a[g]=a[g-1]+1 to 2g-1 do > ###some computations here### > > The problem is that everytime we change the value of g, we need to > modify the code, those loops above. So this is not a good code. > > Any advice would be greatly appreciated. >
- References:
- How to simplify this code with variable number of nesting loops?
- From: Rex <aoirex@gmail.com>
- How to simplify this code with variable number of nesting loops?