Summe der Potenzen in einem Bereich

JavaScriptJavaScriptBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden wir eine JavaScript-Funktion untersuchen, die die Summe der Potenzen in einem angegebenen Zahlenbereich berechnet. Sie werden lernen, wie Sie eingebautes Array-Methoden wie fill(), map() und reduce() verwenden, um mathematische Operationen effizient durchzuführen. Darüber hinaus werden Sie die Möglichkeit haben, die Eingabeparameter der Funktion anzupassen, um Ihren Anforderungen gerecht zu werden.

Funktion zur Berechnung der Summe der Potenzen in einem angegebenen Bereich

Um die Summe der Potenzen aller Zahlen innerhalb eines bestimmten Bereichs (einschließlich der Endpunkte) zu berechnen, verwenden Sie die folgende Funktion:

const sumPower = (end, power = 2, start = 1) =>
  Array(end + 1 - start)
    .fill(0)
    .map((x, i) => (i + start) ** power)
    .reduce((a, b) => a + b, 0);

So können Sie diese Funktion verwenden:

  • Rufen Sie sumPower(end) auf, um die Summe der Quadrate aller Zahlen von 1 bis end zu berechnen.
  • Rufen Sie sumPower(end, power) auf, um die Summe der power-ten Potenzen aller Zahlen von 1 bis end zu berechnen.
  • Rufen Sie sumPower(end, power, start) auf, um die Summe der power-ten Potenzen aller Zahlen von start bis end zu berechnen.

Beachten Sie, dass die zweiten und dritten Argumente (power und start) optional sind und standardmäßig auf 2 und 1 festgelegt sind, wenn nicht angegeben.

Beispiel:

sumPower(10); // Gibt 385 zurück (Summe der Quadrate der Zahlen von 1 bis 10)
sumPower(10, 3); // Gibt 3025 zurück (Summe der Kuben der Zahlen von 1 bis 10)
sumPower(10, 3, 5); // Gibt 2925 zurück (Summe der Kuben der Zahlen von 5 bis 10)

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Lab "Sum of Powers in Range" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.