Escolhendo o intervalo dos números sorteados
Na prática, o algoritmo randômico utilizado hoje pelos computadores é mais complexo. Mas aqui, o que importa é entendermos que o computador é capaz de simular um sorteio através de um cálculo complexo que o usuário não pode acompanhar. Para facilitar o uso desses números numa programação qualquer, o algorítimo pode ainda padronizar os resultados, chegando sempre a um número entre 0 e 1. Isso não é difícil: na operação que exeplificamos acima, bastaria dividir o resultado por 10 ou 100 ou 1000..., tomando uma quantidade de zeros igual à quantidade de algarismos do número final. Por exemplo, se o resultado é 4582, dividimos esse número por 10000 (quatro algarismos, 1 seguido de quatro zeros), e obtemos, 0,4582. Em seguida, consideramos apenas uma casa depois da vírgula, chegando a 0,4.
Depois disso, definimos o intervalo desejado. Suponhamos que eu queira simular um sorteio que pode nos dar como resultado números inteiros entre 0 e 4. Para isso, o computador deve fazer corresponder a cada um dos números esperados (0, 1, 2, 3 ou 4) um intervalo igual entre os números que resultam da operação, entre 0 e 1. Suponhamos que o computador, entre 0 e 1, só trabalhe com uma casa depois da vírgula. Assim, teríamos a seguinte correspondência:
0,0 e 0,1 = 0
0,2 e 0,3 = 1
0,4 e 0,5 = 2
0,6 e 0,7 = 3
0,8 e 0,9 = 4
Mas há uma forma matematicamente mais simples de efetuar essa correspondência, que é multiplicar o número entre 0 e 1 pela quantidade de números possíveis no sorteio que é simulado e, em seguida, considerar apenas a parte inteira do resultado (eliminando o que vem depois da vírgula, após a multiplicação):
0,0 x 5 = 0,0 -> 0
0,1 x 5 = 0,5 -> 0
0,2 x 5 = 1,0 -> 1
0,3 x 5 = 1,5 -> 1
0,4 x 5 = 2,0 -> 2
0,5 x 5 = 2,5 -> 2
0,6 x 5 = 3,0 -> 3
0,7 x 5 = 3,5 -> 3
0,8 x 5 = 4,0 -> 4
0,9 x 5 = 4,5 -> 4
Se os números esperados fossem entre 1 e 5, em vez de 0 e 4, teríamos a mesma quantidade (5 números) mas deveríamos somar 1 ao resultado. Dessa forma, podemos instruir o computador a nos fornecer qualquer quantidade de números, dentro de qualquer intervalo, mantendo a imprevisibilidade dos resultados.
[voltar ao índice de artigos]