Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

231
Visualizações
Obtenga un número aleatorio centrado en el centro

¿Es posible obtener un número aleatorio entre 1 y 100 y mantener los resultados principalmente dentro del rango de 40 a 60? Quiero decir, rara vez saldrá de ese rango, pero quiero que esté principalmente dentro de ese rango... ¿Es posible con JavaScript/jQuery?

En este momento solo estoy usando Math.random() * 100 + 1 básico.

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

La forma más sencilla sería generar dos números aleatorios del 0 al 50 y sumarlos.

Esto da una distribución sesgada hacia 50, de la misma manera que tirar dos dados sesga hacia 7.

De hecho, al usar una mayor cantidad de "dados" (como sugiere @Falco) , puede hacer una aproximación más cercana a una curva de campana:

 function weightedRandom(max, numDice) { let num = 0; for (let i = 0; i < numDice; i++) { num += Math.random() * (max/numDice); } return num; } 

números aleatorios ponderados

JSFiddle: http://jsfiddle.net/797qhcza/1/

over 4 years ago · Santiago Trujillo Relatório

0

Tiene algunas buenas respuestas aquí que brindan soluciones específicas; déjame describirte la solución general. El problema es:

  • Tengo una fuente de números aleatorios distribuidos más o menos uniformemente entre 0 y 1.
  • Deseo producir una secuencia de números aleatorios que sigan una distribución diferente.

La solución general a este problema es calcular la función cuantil de su distribución deseada y luego aplicar la función cuantil a la salida de su fuente uniforme.

La función cuantil es la inversa de la integral de su función de distribución deseada. La función de distribución es la función en la que el área bajo una parte de la curva es igual a la probabilidad de que el elemento elegido al azar esté en esa parte.

Doy un ejemplo de cómo hacerlo aquí:

http://ericlippert.com/2012/02/21/generating-random-non-uniform-data/

El código está en C#, pero los principios se aplican a cualquier lenguaje; debería ser sencillo adaptar la solución a JavaScript.

over 4 years ago · Santiago Trujillo Relatório

0

Tomar matrices de números, etc. no es eficiente. Debe tomar una asignación que tome un número aleatorio entre 0 y 100 y se asigne a la distribución que necesita. Entonces, en su caso, podría tomar f(x)=-(1/25)x 2 +4x para obtener una distribución con la mayor cantidad de valores en el medio de su rango.

Distribución

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda