php loaded dice help

I am trying to accomplish a loaded dice php program, is there something in the rand I would set up so that it rolls a one half of the time and different numbers the rest of the time. I asked my professor and he told me I was working to far ahead of the class and most likely we would not even have to accomplish this… I want to do it though Thank you … DeAnna. :’(

Depends. Do you want a probability of rolling a 1 half of the time or do you want to enforce that every other roll it will be a 1? If you want to enforce it then you will have to track each roll.

probability of rolling a 1 half of the time… will this be dealing with the rand function?

Yes. Give it a go.

I did give it a go … and its not working correctly[php]<?php

// loaded dice, should roll the number 1 half the time out of a total of 6.

$roll1 = rand(1,6);

if (rand(0,1))
{
$roll = rand(2,6);
}
else
{
$roll = 1;
}

$roll2 = rand(1,6);

print <<<HERE

Rolls normal roll:

You rolled a $roll2.

Rolls the number 1 half the time:

You rolled a $roll1.

HERE;

?>
[/php]

$roll1 and $roll2 are both rand(1,6). The roll that is probably a 1 half the time is called $roll.

[php]$roll1 = mt_rand(0,1) ? mt_rand(1,6) : 1;
$roll2 = mt_rand(1,6);[/php]

so just put that code where I have the code for roll1 and roll2? trying it now…

Here’s a crazy way of doing it… ;D
…and if you want to get really random I’m sure you could do something with this array_rand (php.net Manual). You know this go me thinking I would never trust an online gambling site after doing something like this. :o
[php]<?php

$spinResult = array();
$spinOnes = array();

if (isset($_POST['action']) && $_POST['action'] == 'roll') {
	
	//  Number of Rolls:
	$numRolls = $_POST['numRolls'];
	
	$count = 1;
	$maxFloor =  floor($numRolls / 2);
	$maxCeil  =  ceil($numRolls / 2);
			
	while ( $count <= $maxFloor ) {			
						
			$dice = rand(2,6);
			$spinResult[] = $dice;
			$count++;																																											 						
	}
	$count = 1;
	while ( $count <= $maxCeil) {
		$spinOnes[] = 1;
		$count++;	
	}
	
	$spinResult = array_merge($spinResult , $spinOnes);
	
	// Lets' Mix it a little bit....
	for ($x = 0 ; $x < 20; $x++) {
		shuffle($spinResult);
	}
}

?>

Random Number <?php foreach ($spinResult as $key => $spinDisplay) { echo '

Spin Result ' . ($key + 1) . ' is ' . $spinDisplay . '

'; } ?>

Number of Rolls:

[/php]
Sponsor our Newsletter | Privacy Policy | Terms of Service