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