var myApp = angular.module('myApp',[]);
//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});
function MyCtrl($scope) {
$scope.number_of_sticks = 4;
$scope.iterations = 1000000;
$scope.winners = [];
$scope.stats = [];
$scope.deviation= [];
$scope.average = 0;
$scope.getSticks = function(size)
{
var sticks = [];
var loser = Math.floor((Math.random()*size));
for(var i = 0; i < size; i++) sticks[i] = 0;
sticks[loser] = 1;
return sticks;
};
$scope.play = function(size)
{
var sticks = $scope.getSticks(size);
for(var i = 0; i < sticks.length; i++)
if(typeof $scope.winners[i] === 'undefined')
$scope.winners[i] = sticks[i];
else
$scope.winners[i] = $scope.winners[i] + sticks[i];
};
for(var i = 0; i < $scope.iterations; i++)
$scope.play($scope.number_of_sticks);
for(var i = 0; i < $scope.number_of_sticks; i++) {
$scope.stats[i] = $scope.winners[i] / $scope.iterations;
$scope.average += $scope.stats[i];
}
$scope.average = $scope.average / $scope.number_of_sticks;
for(var i = 0; i < $scope.number_of_sticks; i++)
$scope.deviation[i] = Math.round(($scope.average - $scope.stats[i]) * 100);
}
<div ng-controller="MyCtrl">
<h3>Winners</h3>
<div>{{ winners | json }}</div>
<h3>Stats</h3>
<div>{{ stats | json }}</div>
<div>Mean is: {{average}}</div>
<h3>Deviation</h3>
<div>{{deviation}}</div>
</div>
/* $scope.getSticks = function(size)
{
var sticks = [];
var loser = Math.floor((Math.random()*size));
for(var i = 0; i < size; i++) sticks[i] = 0;
sticks[loser] = 1;
return sticks;
};
$scope.play = function(size)
{
var sticks = $scope.getSticks(size);
for(var i = 0; i < sticks.length; i++)
if(typeof $scope.winners[i] === 'undefined')
$scope.winners[i] = sticks[i];
else
$scope.winners[i] = sticks[i];
};
$scope.winners = $scope.getSticks(6);
for(var i = 0; i < 1000; i++)
$scope.play(6);
*/
External resources loaded into this fiddle: