Originariamente inviato da andr3a
e' un metodo non molto efficace il round per i numeri casuali, perche' il primo e l' ultimo hanno la meta' delle possibilita' di uscire rispetto gli altri ( esempio < 0.5, ovvero 0, e' diverso da 0.5 < 1.5 che sarebbe sempre 1 con il round ... idem per il 10, > 9.5 ha meno possibilita' di 8.5 < 9.5 )

se vuoi da 0 a 10 prova con

k = Math.ceil( 11 * Math.random() ) - 1;

Math.ceil( 11 * Math.random() ) sara' da 1 a 11 , di qui il -1 che porta tra 0 e 10
Secondo me dovresti usare la funzione floor, perché è possibile, ma estremamente improbabile, che con questo codice risulti k = -1. Io userei:

k = Math.floor(11*Math.random());

In questo modo non ci possono essere errori. Col massimo rispetto per andr3a