¿Cuántos números en la array dada son menores/iguales al valor dado usando la fórmula percentil?

El siguiente enfoque cubre cómo calcular cuántos números en la array dada son menores o iguales al valor dado usando la fórmula percentil en JavaScript.

Declaración del problema: se le proporciona una array que contiene diferentes valores enteros y también un valor entero. Debe ver cuántos números en la array dada son menores o iguales al valor entero dado y devolver el valor percentil del resultado usando la fórmula percentil en JavaScript.

Como ejemplo, tome la array ilustrada anteriormente que es [1,2,3,4,5,6] y el valor entero dado es 6. Entonces, si contamos cuántos elementos hay que son menores que e iguales a 6, entonces veremos que hay 6 elementos (1,2,3,4,5,6) que son menores e iguales a 6. 

Por lo tanto, según la fórmula del porcentaje, imprimiremos nuestro resultado como 100 por ciento ya que todos los elementos son menores e iguales al valor entero dado.

Enfoque: Hay varios enfoques para resolver este problema en particular. Hemos cubierto los siguientes dos enfoques:

Enfoque 1:

  • En este enfoque, utilizaremos el bucle for-in para verificar en particular cada elemento de una array.
  • Dentro del bucle for, mantendremos nuestra parte lógica y después de terminar la parte lógica imprimiremos nuestro resultado en la consola llamando a una función (o método) en la que estamos escribiendo nuestro código.
  • Hemos usado el operador ternario aquí dentro del bucle for-in en lugar de usar una declaración if-else que hará que nuestro código sea un poco menos extenso y fácilmente comprensible.

Ejemplo:

Javascript

<script>
  const percentileCalculation = (arr, val) => {
    let result = 0;
  
    for (let i in arr) {
      result = result + (arr[i] < val ? 1 : 0) + (arr[i] === val ? 0.5 : 0);
    }
  
    let resultDisplay = (result / arr.length) * 100;
    console.log(resultDisplay);
  };
  
  // Function call
  percentileCalculation([1, 2, 3, 4, 5, 6], 5);
</script>

Producción:

75

Enfoque 2:

  • En este enfoque, utilizaremos el método reduce() que recorrerá nuestra array y la convertirá en una sola entidad o un solo valor.
  • Mientras llamamos al método reduce(), escribiremos nuestra parte lógica dentro del método reduce() y llamaremos a nuestro método principal o una función para imprimir el valor resultante.
  • En el método reduce(), tomaremos dos argumentos: el primero es la variable «acc», que se denomina acumulador, que actuará como nuestro valor de resultado en el que podríamos almacenar nuestro resultado después del cálculo, y el segundo es «v» que se llama como variable de valor en la que se almacena cada valor de una array y al usar esta variable «v» compararemos cada valor con el valor que se nos da para comparar.

Javascript

<script>
  const percentileCalculation = (arr, val) =>
    (100 *
      arr.reduce(
        (acc, v) => acc + (v < val ? 1 : 0) + (v === val ? 0.5 : 0),
        0
      )) /
    arr.length;
  
  // Function call
  console.log(percentileCalculation([1, 2, 3, 4, 5, 6], 5));
</script>

Producción:

75

Publicación traducida automáticamente

Artículo escrito por amansingla y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *