Foros del Web » Programando para Internet » PHP »

Valor aleatorio con Probabilidades

Estas en el tema de Valor aleatorio con Probabilidades en el foro de PHP en Foros del Web. Hola que tal... ando pensando y mi cabeza no da para nada de nada... Tengo una duda Supongamos que yo quisiera regalar una camisa... cogidas ...
  #1 (permalink)  
Antiguo 01/07/2012, 00:34
Avatar de anewryzm  
Fecha de Ingreso: septiembre-2011
Mensajes: 47
Antigüedad: 12 años, 7 meses
Puntos: 7
Pregunta Valor aleatorio con Probabilidades

Hola que tal... ando pensando y mi cabeza no da para nada de nada...
Tengo una duda

Supongamos que yo quisiera regalar una camisa... cogidas de tres tipos baja calidad, media calidad y alta calidad.

Pero al sortear io quiero que la de baja calidad tenga mayor probabilidad de salir.
Se que usando la base de datos podria hacerlo, pero... tendria que poner mas beses la de baja calidad?.

Pregunto esto porque en algunos juegos donde los monstruos te arrojan dinero y objetos como armas ropa etc etc

cuando caen. no caen todas sino al azar... pero caen o bien arma o bien ropa. o a veces no cae ninguna.
Cuando cae dinero supongamos cae en un rango de 10monedas a 20 monedas. pero es mas probable que te caiga una de 10 que una de 20... no se si me explique bien.
de antemano gracias

Salu2
  #2 (permalink)  
Antiguo 01/07/2012, 09:12
 
Fecha de Ingreso: mayo-2006
Mensajes: 475
Antigüedad: 17 años, 11 meses
Puntos: 58
Respuesta: Valor aleatorio con Probabilidades

Yo creo que forma super sencilla podría ser así. Rellenas un array con más posibilidades de una que de otra y luego mustras el elemento con un número aleatorio...
Código PHP:
$array=array();
for(
$i=0;$i<100;$i++){
    if(
$i<60){//si es menor de 60, 10 monedas
        
$array[]='10 monedas';
    }elseif(
$i>=60 && $i<90){//si es mayor de 60 y menor que 90, 20 monedas
        
$array[]='20 monedas';
    }else{
//para el resto 30 monedas
        
$array[]='30 monedas';
    }
}
$aleatorio=rand(0,100);
echo 
$array[$aleatorio].'-'.$aleatorio
  #3 (permalink)  
Antiguo 01/07/2012, 18:34
Avatar de anewryzm  
Fecha de Ingreso: septiembre-2011
Mensajes: 47
Antigüedad: 12 años, 7 meses
Puntos: 7
Respuesta: Valor aleatorio con Probabilidades

Muchas gracias :D
  #4 (permalink)  
Antiguo 02/07/2012, 07:35
 
Fecha de Ingreso: septiembre-2011
Ubicación: Yucatán
Mensajes: 42
Antigüedad: 12 años, 7 meses
Puntos: 8
Respuesta: Valor aleatorio con Probabilidades

Para que tan complicado?
Código PHP:
$aleatorio=rand(0,100);
if (
$aleatorio 70) echo 'alta calidad'//dando un 30% de probabilidad de escoger alta calidad
else if ($aleatorio >50) echo 'media calidad'//dando un 20% de probabilidad de escoger media calidad 
        
else echo 'mala calidad'//dando un 50% de probabilidad de escoger mala calidad 

Etiquetas: aleatoria
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:58.