Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: #Aitor en 12 Marzo 2016, 00:16 AM

Título: Problema con funciones y while.
Publicado por: #Aitor en 12 Marzo 2016, 00:16 AM
Me estoy comiendo la cabeza con una estupidez que quería hacer.

Código (php) [Seleccionar]
<?php

/* Jose' coin flipping

 If you get "Head", that means you have to come,
 but if it's "tail" you haven't.

 Best of lucks!

 Development by Aitor
 */

function heads_tails($random){

$heads_tails = array(
=> true// head
=> false); // tail

 return $heads_tails[$random];
}

$random rand(1,2);

$heads_tails heads_tails($random);

$kill_a_dog 0;

while($heads_tails == false){
$kill_a_dog++;
$heads_tails heads_tails($random);
}

echo 
"Número de perros muertos: ".$kill_a_dog;

?>


La idea es, a partir de un número aleatorio, 1 ó 2, genera un true o false, lo que sería cara, en caso de true, y cruz en caso de false.

En el caso de que saliese false, entrar en un while del que no salgas hasta que la función retorne un true, el problema está en que, al probar el código, genera el siguiente error.

Citar
Fatal error: Maximum execution time of 30 seconds exceeded in C:\xampp\htdocs\PHP\JoseComeHere\test2.php on line 30

¿Dónde está el fallo?

Edito:

Soy la cosa más idiota del mundo. Rand siempre tendría el mismo valor y por ello nunca saldría del bucle. Solucionado con meter un rand en el while tal que así:

Código (php) [Seleccionar]

while($heads_tails == false){
$random = rand(1,2);
$kill_a_dog++;
$heads_tails = heads_tails($random);

}


Lamento el post tan ridículo. Saludos.
Título: Re: Problema con funciones y while.
Publicado por: #!drvy en 12 Marzo 2016, 00:49 AM
Código (php) [Seleccionar]
$kill_a_dog = 0;
...
echo "Número de perros muertos: ".$kill_a_dog;



Pobres perritos  :-\
(http://tuscachorros.com/wp-content/uploads/2009/04/adorable01.jpg)

Saludos
Título: Re: Problema con funciones y while.
Publicado por: #Aitor en 12 Marzo 2016, 02:02 AM
Cita de: #!drvy en 12 Marzo 2016, 00:49 AM
Código (php) [Seleccionar]
$kill_a_dog = 0;
...
echo "Número de perros muertos: ".$kill_a_dog;



Pobres perritos  :-\
(http://tuscachorros.com/wp-content/uploads/2009/04/adorable01.jpg)

Saludos

No es mi culpa que no quieran venir al Salón del manga, y a consecuencia tenga que matar perros para que vengan. Muahahhahaha  ::)