Math.random()
nos proporciona un número aleatorio entre 0 y 1, incluido el cero y excluido el 1. Permite generar valores de una distribución de probabilidad uniforme cero, uno.La función
Math.floor
toma la parte entera de un número. No redondea, sino que toma la parte entera. Por ejemplo, Math.floor(5.7) es igual a 5.Con estas dos funciones podemos generar los valores de un dado de 6 caras, usando la expresión siguiente.
Math.floor(Math.random()*6)+1
Veamos el código.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<h2>Un dado de 6 caras</h2>
<p>Genera números aleatorios enteros entre 1 y 6.</p>
<button onclick="myFunction()">Lanza el dado</button>
<p id="salida"></p>
<script>
var texto='';
var resultado='';
function myFunction() {
var aleatorio=Math.floor(Math.random()*6)+1
texto+=aleatorio+" ";
resultado='<h3>'+aleatorio+'</h3>'+'<br><br>'+texto;
document.getElementById("salida").innerHTML = resultado;
}
</script>
</body>
</html>
El programa en acción se puede ver en la siguiente página, y también tenemos disponible el código.
seria interesante agregarle las caras del dado, y el dado animarlo girando en la tirada...
ResponderEliminarnada pide
ResponderEliminarPero sería un dado con demasiadas chances de que salta el 1. Teniendo en cuenta que cuando sale 0 se pasa a 1, tecnicamente hay 2/7 chances de que salga el 1. Hay una forma de solucionar eso?
ResponderEliminar