Trong bài toán này, chúng ta được cho một số n xác định số hạng thứ n của dãy số 1 ^ 1 + 2 ^ 2 + 3 ^ 3 +… + n ^ n. Nhiệm vụ của chúng tôi là tạo một chương trình tìm tổng của chuỗi.
Hãy lấy một ví dụ để hiểu vấn đề,
Đầu vào
n = 4
Đầu ra
30
Giải thích - tổng =(1 ^ 1) + (2 ^ 2) + (3 ^ 3) + (4 ^ 4) =1 + 4 + 9 + 16 =30.
Để giải quyết vấn đề này, chúng ta sẽ lặp từ 1 đến n. Tìm bình phương của mỗi số. Và thêm từng thứ vào biến tổng.
Thuật toán
Initialize sum = 0 Step 1: Iterate from i = 1 to n. And follow : Step 1.1: Update sum, sum += i*i Step 2: Print sum.
Ví dụ
Chương trình minh họa hoạt động của giải pháp của chúng tôi,
#include <iostream>
using namespace std;
long long calcSeriesSum(int n) {
long long sum = 0;
for( int i = 1; i <= n; i++ )
sum += (i*i);
return sum;
}
int main() {
int n = 7;
cout<<"Sum of the series 1^1 + 2^2 + 3^3 + ... + "<<n<<"^"<<n<<" is "<<calcSeriesSum(n);
return 0;
} Đầu ra
Sum of the series 1^1 + 2^2 + 3^3 + ... + 7^7 is 140