<html>
<head>
<style>
body{font-family:monospace; color:greenyellow;
background-color: black;}
</style>
</head>
<body>
<script>
numerosaleatorios = Array();
function random(min, max){ return Math.floor(Math.random() * (max - min)) + min;
}
function raiz(x, n) { return Math.exp(Math.log(x) / n);
}
const masRepetido = ar => ar.reduce((acum, el, i, ar) => { const count=ar.filter(e => e==el).length;
return count > acum[1] ? [el, count] : acum;
}, ["", 0]
)
function mediana(arr) { arr.sort((a,b) => a-b);
const l=arr.length;
return l%2==0
? arr.slice(l/2-1, l/2+1).reduce((a,b) => a+b)/2
: arr.slice((l/2), l/2+1)[0];
}
for(i=0; i<30; i++){ numerosaleatorios[i]=random(1, 99);
}
alto=0;
bajo=100;
for( i=0; i<30; i++){ if(alto<numerosaleatorios[i]){ alto = numerosaleatorios[i];
}
if(bajo>numerosaleatorios[i]){ bajo = numerosaleatorios[i];
}
}
mediaaritmetica = numerosaleatorios[0];
for( i=1; i<30; i++){ mediaaritmetica = mediaaritmetica + numerosaleatorios[i];
}
mediaaritmetica = mediaaritmetica / 30;
function obtenerMediaValores(arr) { // sumamos los numeros
const porcentaje=arr.reduce(
(acum, el) => { el in acum ? acum[el]++ : acum[el]=1;
return acum;
}, {} );
// calculamos la media de cada uno de ellos
for (let i=0; i<Math.max(arr); i++) { porcentaje[i]=porcentaje[i]*100/arr.length || 0;
}
return porcentaje;
}
document.write("Numeros aleatorios: "+numerosaleatorios+"</br>"); document.write("Numero mas alto: "+alto+"</br>"); document.write("Numero mas bajo: "+bajo+"</br>"); document.write("Media aritmetica: "+mediaaritmetica+"</br>"); document.write("Moda: "+masRepetido(numerosaleatorios)[0]+"</br>"); document.write("Mediana: "+mediana(numerosaleatorios)+"</br>");
const porcentaje=obtenerMediaValores(numerosaleatorios);
Object.keys(porcentaje).forEach(el => { document.write(el+" - "+porcentaje[el]+"<br>");
})
</script>
</body>
</html>