¿Cómo obtener la suma de las potencias de todos los números de principio a fin en JavaScript?

Dadas tres variables como Inicio, Finalización y Potencia . Nuestra tarea es encontrar la suma total de todos los números entre la inclusión inicial y final en ambos extremos elevados a la potencia.

Ejemplo 1: variable inicial 1 final 5 y potencia 2. Iterar de 1 a 5 y elevar cada uno a la potencia de 2. Sumar todos los elementos 1+4+9+16+25 que es 55.

Input: 1, 5, 2
Output: 55

Ejemplo 2: 

Input: 1, 5, 3
Output: 225

Enfoque 1: podemos obtener la respuesta deseada siguiendo los enfoques. En este enfoque, usamos un ciclo for para resolver nuestro problema. El enfoque simple es usar for loop para iterar de principio a fin y seguir los pasos.

  • Hacer ans variables que almacenen nuestros ans.
  • Eleva cada elemento al poder del Poder .
  • Agregue cada elemento elevado a la variable ans .
  • Regresar respuesta .

Ejemplo: 

Javascript

<script>
    // Function that return sum of
    // All element raised to power
    function PowerNo( s, num, power)
    {
      var ans = 0;
      for( let i = s; i <= num; i++)
      {
        let temp = i**power;
         
        ans += temp;
      }
      return  ans;
    }
    // Test variable
    var a1 = PowerNo(1, 5, 2);
    var a2 = PowerNo(1, 5, 3);
    var a3 = PowerNo(5, 5, 4);
    // Printing result
    console.log(a1)
    console.log(a2)
    console.log(a3)
</script>

Producción : 

55
225
625

Enfoque 2: en este enfoque, usamos los métodos map() y reduce() para resolver nuestro problema. La función map() se usa para iterar sobre la array y realizar la función con todos los elementos y devuelve una nueva array con un valor modificado. El método reduce() se usa para realizar una función con todos los elementos, almacenarla en una variable y devolverla. 

  • Tenemos variables de inicio, fin y potencia .
  • Cree una array de rangos desde el rango inicial hasta los valores del rango final .
  • Use el método map() en una array y eleve todos los números a la potencia de Power .
  • Use el método reduce() en la array actualizada y sume todos los elementos.
  • Finalmente, reduce() devuelve la suma total.

Ejemplo:

Javascript

<script>
  // function that perform raising  number to power
  function PowerNo(num, i, power) {
    return (num + i) ** power;
  }
  // function that perform sum to all the element
  function SumNo(x, y) {
    return x + y;
  }
  // function performing map() and reduce( ) ot array
  const sumPower = (num, s, power) =>
    Array(num + 1 - s)
      .fill(0)
      .map((x, i) => PowerNo(s, i, power))
      .reduce((x, y) => SumNo(x, y), 0);
 
  // test case
  var a1 = sumPower(5, 1, 2);
  var a2 = sumPower(5, 1, 3);
  var a3 = sumPower(5, 5, 4);
 
  // printing answer
  console.log(a1);
  console.log(a2);
  console.log(a3);
</script>

Producción : 

55
225
625

Publicación traducida automáticamente

Artículo escrito por satyam00so 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 *