Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<title>Sandbox</title>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
<style type="text/css" media="screen">
body { background-color: #000; font: 16px Helvetica, Arial; color: #fff; }
</style>
</head>
<body>
  <input type="button" value="go 1x" id="go"/>  
  <input type="button" value="go 100x" id="go100x"/>
  <input type="button" value="go 10000x (with summary only, be patient!)" id="go10000x"/>
  <p>Amoeba Trials (<span id="Summary"></span>):</p>
  <ol id="Trials"></ol>
</body>
</html>
 
$(document).ready(function(){
  $("#go").bind("click", function() { LiveOrDie(1); } );
  $("#go100x").bind("click", function() { LiveOrDie(100); } );
  $("#go10000x").bind("click", function() { LiveOrDie(10000); } );  
});
var Lived = 0; var Perished = 0;
var ACount = 0;
function LiveOrDie(RunCount){
  // perform a new trial, starting with 1
  for(var i=0;i<RunCount;i++){
    var AmoebaCount = 1;
    var Iterations = 0;
    while(AmoebaCount > 0 && AmoebaCount < 1000 && Iterations < 10){
      var W;W=AmoebaCount;
      for(var j=0; j<W; j++){
        AmoebaCount = Number(AmoebaCount) + Math.floor(Math.random()*4) - 1;
        if(AmoebaCount===0) break;
      }
      Iterations++;
    }
    ACount += AmoebaCount;
    if(AmoebaCount===0)
      Perished++;
    else
      Lived++; 
    if(RunCount<=100) 
      $("#Trials").prepend($("<li>Amoeba count after " + Iterations + " iterations: <span class='AmoebaCount'>" + AmoebaCount + ". Accumulated count is " + ACount + "</span></li>"));
  }
  
  $("#Summary").html(Math.round(10000*Number(Perished)/(Lived+Perished))/100 + "% perished");
}
Output

You can jump to the latest bin by adding /latest to your URL

Dismiss x
public
Bin info
tinyctimpro
0viewers