www.webdeveloper.com
Results 1 to 2 of 2

Thread: [RESOLVED] Random number with statistical distribution

  1. #1
    Join Date
    Sep 2008
    Location
    Jackson MS
    Posts
    373

    resolved [RESOLVED] Random number with statistical distribution

    I need help converting a Math.random() number into something that would simulate the distribution curve. For example, if the mean were 10.0 and a standard distribution was 1.0, the returned random number would be more likely to be between 10.0-10.5 than 10.5-11.0 and something > 13 would be extremely rare.

    Thanks in advance.

  2. #2
    Join Date
    Sep 2008
    Location
    Jackson MS
    Posts
    373
    Got it. I ran the random function 20 times, summing the results. After tweaking the factor by running it 100,000 times, I got:
    Code:
    <html><head><title>Rubato test</title>
    <script language="JavaScript">
    function startup() {document.tournform.Compute.focus();}
    function playOne() {
       var randSum=0;
       for (var i=0; i < 20; i++)
         randSum+= Math.random();
       return (randSum * 0.777) - 7.77;
      return r;
    }
    
    function calculate() {
       var OutText = "";
       var sum=0;
       var sumSq=0;
       var Min = 100000
       var Max =-100000
       var StdD = 0
       
       for (var i = 0; i < 100000; i++) {
         var x = playOne();
         sum += x;
         sumSq += x * x;
         if (Min > x) Min = x;
         if (Max < x) Max = x;
       }
       mean = sum / 100000 
       StdD = Math.sqrt( sumSq / 100000 - mean * mean);    
       OutText = "The mean is " + mean + " min value = " + Min + " max value = " + Max + "\n Std deviation = " + StdD;
          document.tournform.OutputField.value = OutText;
    }
    
    </script>
    
    </head>
    <body onload="startup()">
    <form name="tournform" onSubmit="calculate();return false;">
      <table width="550" height="228">
        <tr>
          <td colspan="3" width="500" height="24">
            <b><big>Test Rubato:</big></b>
          </td>
        </tr>
        <tr>
          
          <td width="347"><input type=button name="Compute" value="Compute" onClick="calculate()"></td>
        </tr>
        <tr>
        <td colspan=3 width="500" height="167">
          <textarea name="OutputField" rows="21" cols="80"></textarea></td></tr>
      </table>
    </form>
    
    </form>
    <p><font size="4">This script tests a random number generator 10000 times and displays the results.</font><br>
    </body>
    </html>

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles