Nombor asli ialah nombor bermula dari 1 dan termasuk semua integer positif. Artikel berikut membincangkan dua cara yang mungkin untuk mengira jumlah kuasa kelima bagi n nombor asli pertama . Artikel ini membincangkan kedua-dua pendekatan secara terperinci dan membandingkannya dari segi kecekapan dan intuitif.
Tujuan masalah ini adalah untuk mengira jumlah aritmetik bagi n nombor asli pertama, semuanya dinaikkan kepada kuasa kelimanya, iaitu
$mathrm{1^5 + 2^5 + 3^5 + 4^5 + 5^5 + … + n^5}$ sehingga item ke-.
Memandangkan n ialah nombor asli, nilainya tidak boleh kurang daripada 1.
Input: n = 3
Output: 276
$mathrm{1^5 = 1 * 1 * 1 * 1 * 1 = 1}$
$mathrm{2^5 = 2 * 2 * 2 * 2 * 2 = 32}$
$mathrm {3^5 = 3 * 3 * 3 * 3 * 3 = 243}$
Menambah istilah ini, kita mendapat $mathrm{1^5 + 2^5 + 3^5 = 276}$
Oleh itu, hasil tambah bagi 3 nombor asli yang pertama ialah 276.
Input: n = 1
Output: 1
$mathrm{1^5 = 1 * 1 * 1 * 1 * 1 = 1}$
Jadi hasil tambah 1 nombor asli yang pertama ialah 1.
Input: n = 11
Output: 381876
$mathrm{1^5 = 1 * 1 * 1 * 1 * 1 = 1}$
$mathrm{2^5 = 2 * 2 * 2 * 2 * 2 = 32}$
. ....
$mathrm{11^5 = 11 * 11 * 11 * 11 * 11 = 161051} $
Selepas menambah istilah ini, kami mendapat $mathrm{1^5 + 2^5 + 3^5 + ... + 11^ 5 = 381876}$
Jadi jumlah 11 nombor asli yang pertama ialah 381876.
Gunakan gelung berulang untuk mengira kuasa kelima setiap nombor satu demi satu.
Buat pembolehubah untuk menyimpan jumlah selepas setiap lelaran gelung.
Tunjukkan jawapan.
Fungsi utama()
Memulakan n.
Fungsi memanggil sumOfFifthPower().
Cetak jumlahnya.
Fungsi sumOfFifthPower(int n)
Jumlah permulaan = 0
untuk (i dari 1 hingga n)
jumlah = jumlah + (pow(i,5)
Kembalikan jumlah
Program ini mengira kuasa kelima setiap nombor dan menambahkannya pada jumlah sedia ada pada setiap lelaran menggunakan gelung for yang dilaksanakan n kali dalam fungsi sumOfFifthPower().
// A C++ program to find the sum of the first n natural numbers, all raised to their fifth power. #include <iostream> #include <cmath> using namespace std; // This function calculates the summation of fifth powers of the first // n natural numbers and stores // it in the variable sum int sumOfFifthPower(int n){ int sum = 0; for (int i = 1; i <= n; i++) { // calculate fifth power of i and add it to sum sum = sum + pow(i, 5); } return sum; } // main function int main(){ int n = 3; int ans; // to store final result ans = sumOfFifthPower(n); // function call cout << "The sum of the fifth powers of the first " << n << " natural numbers is: "; cout << ans; // Display the final result return 0; }
The sum of the fifth powers of the first 3 natural numbers is: 276
Kerumitan masa: O(n), kerana hanya satu untuk gelung digunakan di dalam fungsi sumOfFifthPower().
Kerumitan ruang: O(1), kerana tiada ruang tambahan digunakan.
Gunakan formula matematik untuk mengira hasil tambah kuasa kelima bagi setiap nombor.
Tunjukkan jawapan.
$$mathrm{displaystylesumlimits_{k=1}^n :k^5=frac{1}{12}(2n^6+6n^5+5n^4−n^ 2)}$$
Fungsi utama()
Memulakan n.
Fungsi memanggil sumOfFifthPower().
Cetak jumlahnya.
Fungsi sumOfFifthPower(int n)
Jumlah permulaan = 0
Jumlah = ((2 * pow(n,6)) + (6 * pow(n,5) + (5 * pow(n,4) - (pow(n,2)) / 12
Kembalikan jumlah
Program ini mengira jumlah dengan menggantikan nilai n ke dalam formula matematik yang mengira hasil tambah n nombor asli pertama yang dinaikkan kepada kuasa kelima dalam fungsi sumOfFifithPower().
// A C++ program to find the sum of the first n natural numbers, all raised to their fifth power. #include <iostream> #include <cmath> using namespace std; // This function calculates the summation of fifth powers of the first // n natural numbers and stores it in the variable sum int sumOfFifthPower(int x){ int sum = 0; sum = ((2 * pow(x,6)) + (6 * pow(x,5)) + (5 *pow(x,4)) - (pow(x,2))) / 12; return sum; } // main function int main(){ int n = 3; int ans; // to store final result ans = sumOfFifthPower(n); // function call cout << "The sum of the fifth powers of the first " << n << " natural numbers is: "; cout << ans; // Display the final result return 0; }
The sum of the fifth powers of the first 3 natural numbers is: 276
Kerumitan masa: O(1), kerana jawapan dikira dalam satu lelaran menggunakan formula langsung.
Kerumitan ruang: O(1), kerana tiada ruang tambahan diperlukan.
Standard | Kaedah 1 | Kaedah 2 | |
---|---|---|---|
Kerumitan masa | O(n) | O(1) | |
Kerumitan ruang | O(1) | O(1) | |
Intuitif | Lagi | Terjemahan bahasa Cina bagiLess | ialah:Less |
kecekapan | Terjemahan bahasa Cina bagiLess | ialah:Less | Lagi |
Artikel ini membincangkan dua kaedah untuk mengira hasil tambah kuasa kelima bagi n nombor asli pertama. Ia juga memperkenalkan konsep, algoritma, penyelesaian program C++ bagi kedua-dua kaedah dan analisis kerumitan setiap kaedah. Ia boleh diperhatikan bahawa kaedah pertama mempunyai kerumitan masa yang lebih tinggi tetapi lebih intuitif. Pendekatan kedua, sebaliknya, menggunakan formula matematik yang mudah untuk menyelesaikan masalah dengan cekap dalam masa dan ruang O(1).
Atas ialah kandungan terperinci Jumlah n nombor asli pertama dinaikkan kepada kuasa kelima. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!