Re: Relational Operators and Random Integers
- To: mathgroup at smc.vnet.net
- Subject: [mg90337] Re: [mg90305] Relational Operators and Random Integers
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Sun, 6 Jul 2008 07:19:49 -0400 (EDT)
- Reply-to: hanlonr at cox.net
Since your definition of x used SetDelayed (:=) rather than Set (=), every time x is encountered a new RandomChoice is made. To see this, wrap the Which statement in Trace. Bob Hanlon ---- Peter Evans <peter.w.evans at gmail.com> wrote: ============= Hi all, I'm a new user of Mathematica 6 and am struggling with some basics. I wish to write a set of rules which are dependent upon a random variable. I've been using RandomChoice to choose my variable and then large If and Which statements to produce my desired dynamics. The problem is that the number that these statements end up spitting out aren't recognised as what they are in further If and Which statements. Here's a simple example that demonstrates my problem: In[1]:= x := RandomChoice[{1, 2, 3}] x Which[x == 1, 1, x == 2, 2, x == 3, 3] Out[2]= 1 Out[3]= 2 Mathematica clearly thinks x to be 1 but the If statement indicates its 2. What am I doing wrong here? Much thanks, Pete