Re: List element manipulation
- To: mathgroup at smc.vnet.net
- Subject: [mg25441] Re: List element manipulation
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Sun, 1 Oct 2000 02:44:24 -0400 (EDT)
- Organization: Universitaet Leipzig
- References: <8r19qf$hvt@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
my C-Compiler would say "L-value required" and 2-- gives an error.
You can only decrement variables. But
Range[116, 166, 8] /. {a__, b_} :> {a, b - 1}
works fine
Regards
Jens
Martin Rommel wrote:
>
> I want to decrement the last number in list. This ought to be easy, but my
> initial attempts did not bear fruits:
>
> In[40]:=
> MapAt[Decrement, Range[116, 166, 8], -1]
>
> Decrement::"rvalue": "164 is not a variable with a value, so its value
> cannot be changed."
>
> Out[40]=
> {116, 124, 132, 140, 148, 156, 164--}
>
> Do I need to use ReplacePart? That works but still gives me an error!
>
> In[53]:=
> Range[116, 166, 8] // ReplacePart[#, --Last[#], -1] &
>
> Set::"write": "Tag Last in Last[{116, 124, 132, 140, 148, 156, 164}] is
> Protected."
>
> Out[53]=
> {116, 124, 132, 140, 148, 156, 163}
>
> Different error here:
>
> In[51]:=
> Range[116, 166, 8] // ReplacePart[#, --#[[-1]], -1] &
>
> Set::"setps": "{116, 124, 132, 140, 148, 156, 164} in assignment of part
> is not a symbol."
>
> Out[51]=
> {116, 124, 132, 140, 148, 156, 163}
>
> Anybody out there able to enlighten me?
>
> Thanks, Martin