Re: odd behaviour in rule delayed

• To: mathgroup at smc.vnet.net
• Subject: [mg21541] Re: [mg21499] odd behaviour in rule delayed
• From: "Mark Harder" <harderm at ucs.orst.edu>
• Date: Fri, 14 Jan 2000 02:44:00 -0500 (EST)
• Sender: owner-wri-mathgroup at wolfram.com

```Francisco,
You need to put a space between /. and 1.  In Mathematica 3.0.1/WinNT:
list={1,0,1,0,0,1}
k=0;
newlist={1,0,1,0,0,1} /.1:>++k

Out[22]={1,0,1,0,0,1}
Out[23]={10.,0,10.,0,0,10.}\[RuleDelayed]++k

where

list={1,0,1,0,0,1}
k=0;
newlist={1,0,1,0,0,1} /. 1:>++k

Out[24]={1,0,1,0,0,1}
Out[25]={1,0,2,0,0,3}

..because
In[31]:=(list/.1) :>++k
Out[31]={10.,0,10.,0,0,10.}\[RuleDelayed]++k

-mark

-----Original Message-----
From: Francisco Gutierrez <rpena at impsat.net.co>
To: mathgroup at smc.vnet.net
Subject: [mg21541] [mg21499] odd behaviour in rule delayed

>I have M 4.0, window 95.
>I have a list of 0's and 1's, and I want the one's to perform a consecutive
>numeration. For example, transform {1,0,1,0,0,1} into {1,0,2,0,0,3}.
>
>The easiest (and most elegant, I think) way to do it is with a counter and
>rule delayed:
>list={1,0,1,0,0,1}
>kk=0; newlist={1,0,1,0,0,1} /.1:>++k
>
>However, the answer I get from this operation is completely
>odd:{10.,0,10.,0,0,10.}:>++k.  I closed my session and re-started my
>computer, but I keep getting the same stuff.  I don't understand what is
>happening. By the way, this problem didn't appear in M3.0.
>
>Can somebody help me?
>
>Francisco Gutierrez
>
>

```

• Prev by Date: Re: odd behaviour in rule delayed
• Next by Date: Re: odd behaviour in rule delayed
• Previous by thread: Re: odd behaviour in rule delayed
• Next by thread: Re: odd behaviour in rule delayed