Re: Working in Modules
- To: mathgroup at smc.vnet.net
- Subject: [mg15878] Re: Working in Modules
- From: dreissBLOOP at bloop.earthlink.net (David Reiss)
- Date: Wed, 17 Feb 1999 23:33:32 -0500
- Organization: EarthLink Network, Inc.
- References: <7a2c0d$1ul@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
In article <7a2c0d$1ul at smc.vnet.net>, phrje at mimosa.csv.warwick.ac.uk (Dr D
McK Paul) wrote:
> This is my third attempt to post this question. No idea why it doesnt
> work. 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
> --
> ******************************************************
> Professor Don McKenzie Paul
> Department of Physics
> University of Warwick
In the case of init the command s/.{0->-1}; replaces the
0's in s by -1's but does not change s. Thus, when
Partition[s,n] is called, it returns a value based on the
unchanged s.
This would work:
init[n_Integer]:=Module[
{s=Table[Random[Integer],{n n}], s1},
s1=s/.{0->-1};
Partition[s1,n]
]
--David
with no substitutions for
--
----------------------------------------
Scientific Arts:
Creative Services and Consultation
for the Applied and Pure Sciences
David Reiss
Email: dreiss at !SPAMscientificarts.com
----------------------------------------
Remove the !SPAM to send email