|
[Date Index]
[Thread Index]
[Author Index]
Re: List manipulation?
- To: mathgroup at smc.vnet.net
- Subject: [mg128323] Re: List manipulation?
- From: awnl <awnl at gmx-topmail.de>
- Date: Sat, 6 Oct 2012 01:54:12 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <20121004034155.8617868D2@smc.vnet.net> <k4lvjt$d41$1@smc.vnet.net>
Hi,
>
> I got a problem with List manipulation. I have the following list item:
>
> a = -Subscript[50, 5]
>
> and I would like to change the value of 50 to 360-50 and also change the
> sign to +. First I tried to change the sign and then the value and I got
> an outcome I didn't understand. Doing the other way round I get the
> outcome I expected. Does anybody know what the difference is?
>
> Here is the Example file:
> http://dl.dropbox.com/u/4920002/Example.nb
>
>
>
> a = -Subscript[50, 5]
> a[[2, 1]] = 360 - a[[2, 1]]
> a[[1]] = -1*a[[1]]
> a
>
>
> b = -Subscript[50, 5]
> b[[1]] = -1*b[[1]]
> b[[1]] = 360 - b[[1]]
> b
what happens is that you change the OwnValue of b in place from
Times[-1,Subscript[50,5]]
to:
Times[1,Subscript[50,5]]
and finally to:
Times[310,Subscript[50,5]]
which you can check from looking at:
OwnValues[b] // FullForm
after every step. The subtlety is that in the second step the b[[1]] on
the right hand side is evaluated. As usual the b itself is evaluated
first, which will get rid of Times, and only after that Part ([[]])
actually is applied, which you can see from e.g.:
b = -Subscript[50, 5]
b[[1]] = -1*b[[1]]
Trace[b[[1]]]
hth,
albert
Prev by Date:
Problem importing java class
Next by Date:
Re: ordering a group of symbolic operators
Previous by thread:
List manipulation?
Next by thread:
problem with DSolve and spheroidal harmonics
|