Re: Is this a bug?

*To*: mathgroup at smc.vnet.net*Subject*: [mg32069] Re: Is this a bug?*From*: atelesforos at hotmail.com (Orestis Vantzos)*Date*: Sat, 22 Dec 2001 04:22:40 -0500 (EST)*References*: <9vs8ph$g1d$1@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

Your problem is with a[Random[Integer{0,1}]]++ : It is interpreted as a[Random[Integer{0,1}]]=a[Random[Integer{0,1}]]+1 and therefore some of the times the loop transfers the value of one register to the other (plus 1). In that case the combined value can drop or rise by more than 1 -- hence you do not have a total sum of 50. Mathematica is not C! Increment (++) has attribute HoldFirst, therefore its argument (a[Random...] in this case) is evaluated ONLY after arg++ has been replaced by arg=arg+1. Therefore this behaviour is completely normal.. Orestis