Re: Dont Understand
- To: mathgroup at smc.vnet.net
- Subject: [mg15903] Re: Dont Understand
- From: Martin Kraus <mkraus at theorie3.physik.uni-erlangen.de>
- Date: Wed, 17 Feb 1999 23:33:45 -0500
- Organization: Regionales Rechenzentrum Erlangen, Germany
- References: <7a2bm8$1ts@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Don McKenzie Paul wrote:
>
> I'm not an expert in Mathematica and would appreciate comments on why
> init1 returns a list with all zeros replaced by -1, but init does not.
> Its probably very simple but its confused me.
>
> Don
>
> init[n_Integer]:=Module[
> {s=Table[Random[Integer],{n n}]},
> s/.{0->-1};
> Partition[s,n]
> ]
>
> init1[n_Integer]:=Module[
> {s=Table[Random[Integer],{n n}]},
> s/.{0->-1}
> ]
>
> --
>
> Prof. Don McKenzie Paul tel. (1203) 523603 Department of
> Physics fax. (1203) 692016 University of Warwick
> email phrje at csv.warwick.ac.uk COVENTRY CV4 7AL
> UK
I think you just forgot to set s to its new value in init:
s=s/.{0->-1} (instead of s/.{0->-1}), because if you do not set s,
the replacement will have no effect in init.
On the other hand in init1 the new value of s is returned as
this is the last instruction in this module; thus, there is no
need to set s to this value in this case.
Hope that helps
Martin Kraus