// Función para generar el sorteo de 6 números aleatorios entre 0 y 45 usando crypto
function sortearNumeros(): number[] {
const numeros: number[] = [];
while (numeros.length < 6) {
// Usamos crypto.getRandomValues para generar un número aleatorio más seguro
const num = Math.floor(crypto.getRandomValues(new Uint32Array(1))[0] / (Math.pow(2, 32) / 46));
if (!numeros.includes(num)) {
numeros.push(num); // Agrega el número si no está en la lista
}
}
return numeros;
}
// Función para realizar 5000 sorteos y contar las frecuencias de cada número
function realizarSorteos(numSorteos: number): Map<number, number> {
const frecuencias = new Map<number, number>();
// Realizamos los sorteos
for (let i = 0; i < numSorteos; i++) {
const numerosSorteados = sortearNumeros();
// Contamos la frecuencia de cada número sorteado
for (const num of numerosSorteados) {
const conteoActual = frecuencias.get(num) || 0;
frecuencias.set(num, conteoActual + 1);
}
}
return frecuencias;
}
// Función para mostrar los 6 números más frecuentes
function mostrarTopFrecuentes(frecuencias: Map<number, number>): void {
const listaFrecuencias = Array.from(frecuencias.entries());
listaFrecuencias.sort((a, b) => b[1] - a[1]);
console.log("Los 6 números más frecuentes son:");
for (let i = 0; i < 6; i++) {
const [numero, frecuencia] = listaFrecuencias[i];
console.log(`${numero}: ${frecuencia} veces`);
}
}
// Realizamos 5000 sorteos y mostramos los 6 más frecuentes
const frecuencias = realizarSorteos(300000);
mostrarTopFrecuentes(frecuencias);
To embed this project on your website, copy the following code and paste it into your website's HTML: