Sem enviesamento em todo o intervalo
Transformar bits aleatórios num número dentro de um intervalo é onde a maioria dos geradores falha em silêncio: usar o resto faz com que a parte baixa do intervalo saia um pouco mais vezes.
Este descarta os valores que o enviesariam e sorteia de novo, por isso o 100 é exatamente tão provável como o 1 — a diferença é invisível num só sorteio e óbvia ao fim de alguns milhões.