Dar,
I'm afraid you are wrong…
they would not be 27 possibilities (3^3) but only 6 (3! - factorial), because
each line (first, second and third) can only be present once.
And I tested random (3) and random (9999) corrected to give a number between 1
and 3 with the following scripts:
on mouseUp
put "" into fld "FR"
repeat 100
put random(3) & comma after fld "FR"
end repeat
end mouseUp
result:
1,3,2,3,1,1,1,3,3,3,3,2,1,2,2,2,1,2,2,3,1,3,2,3,2,2,3,2,2,3,3,2,2,3,1,3,1,3,2,2,1,3,2,1,3,3,2,3…
mean value: 1.992
on mouseUp
put "" into fld "FR"
put 0 into tt
repeat 1000
put random(9999) into tx
switch
case tx <= 3333
put 1 into t
break
case tx <= 6666
put 2 into t
break
default
put 3 into t
end switch
add t to tt
end repeat
put tt/1000 into fld "Moyenne"
end mouseUp
result:
1,2,3,3,1,3,2,3,3,2,3,2,3,3,2,2,1,1,3,3,2,2,2,1,3,1,3,3,3,3,1,1,3,2,3,1,2,1,1,1,2,1,3,2,3,2,2…
mean value: 1.992
so, it seems to be no statistical difference in the results ! No reason to use
large numbers when not needed. (Ideally, the means should be 2, not 1.992, but
well…)
Jacques
Le 23 mai 2013 à 01:23, Dar Scott <[email protected]> a écrit :
> Here is (I think) the situation for random(3).
>
> Lines will be (virtually) assigned numbers randomly; there are 27
> possibilities.
>
> There are 9 cases in which the first line is assigned a 1. It is first in
> the sort.
> There are 4 cases in which the first line is assigned a 2 and the other lines
> get 2 or 3. It is first in the sort
> There is one case in which all get a 3. Again, the first line comes in first.
>
> So, assuming my math is good, that means the first line comes in first 14 out
> of 27 times. That is 52% and should match what people are getting
> empirically.
>
> This doesn't address broken random(), though. It just emphasizes the
> importance of the big number for random().
>
> Dar
>
>
> On May 22, 2013, at 11:59 AM, Chris Sheffield wrote:
>
>> I have a list of three words that I need to be randomly sorted. To start
>> with, the first word is the correct answer to a question. I want to re-order
>> the list so that the correct answer may be the second or third word, and not
>> necessarily the first. How can I do this successfully every time? The docs
>> give an example like this:
>>
>> sort lines of myVar by random(the number of lines of myVar)
>>
>> But this only seems to work successfully one time. After that, the list is
>> always set so the first word is the correct answer. So then I tried randomly
>> setting the randomSeed value, since this value is supposed to affect the
>> random() function and the any keyword, but this didn't seem to make much
>> difference except to change it so either the second or third word is
>> *always* the right answer. I need it to be more mixed up than that.
>>
>> So does anyone have a good way to do this?
>>
>> Thanks,
>> Chris
>>
>>
>> --
>> Chris Sheffield
>> Read Naturally, Inc.
>> www.readnaturally.com
>
>
> _______________________________________________
> use-livecode mailing list
> [email protected]
> Please visit this url to subscribe, unsubscribe and manage your subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode