Hi,

Below is my suggestion. It allows the
number of flips and coin sides to be
varied, and can tally events of un-
limited length.

Cheers,
Nicolas Cueto


on mouseUp
  
  -- PREP THE VARIABLES
  put 100 into tNumberOfFlips
  put "HT" into tCoin
  put the number of characters in tCoin into tRandSeed
  put empty into tThePreviousToss
  put empty into tTheRun
  put empty into tTheSeries
  
  -- START FLIPPING THE COIN
  repeat with i = 1 to tNumberOfFlips
    put char (random(tRandSeed)) of tCoin into tTheCurrentToss
    if tTheCurrentToss <> tThePreviousToss then 
      -- THE RUN IS BROKEN
      put tTheRun & cr after tTheSeries
      put tTheCurrentToss into tTheRun
    else 
      -- THE RUN CONTINUES
      put tTheCurrentToss after tTheRun
    end if
    put tTheCurrentToss into tThePreviousToss
  end repeat
  delete the last char of tTheSeries
  sort lines of tTheSeries
  delete line 1 of tTheSeries
  
  -- COUNT THE NUMBER OF EVENTS FOR EACH PARTICULAR RUN
  put empty into tThePreviousLine
  put 1 into tEventCount
  put empty into tFinalEventCounts
  repeat for each line tTheCurrentLine in tTheSeries
    if tTheCurrentLine <> tThePreviousLine then
      -- A NEW EVENT
      put "Event count for run-type " & tThePreviousLine & \
          ": " & tEventCount & cr after tFinalEventCounts
      put 1 into tEventCount
    else
      -- THE PREVIOUS EVENT CONTINUES
      add 1 to tEventCount
    end if
    put tTheCurrentLine into tThePreviousLine
  end repeat
  delete line 1 of tFinalEventCounts
  put tFinalEventCounts into field "fResult"

end mouseUp
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to