এই সমস্যায় আমরা দেখব কিভাবে আমরা প্রথম n প্রাকৃতিক সংখ্যার বর্গের যোগফল পেতে পারি। এখানে আমরা লুপের জন্য একটি ব্যবহার করছি, যা 1 থেকে n পর্যন্ত চলে। প্রতিটি ধাপে আমরা পদের বর্গ গণনা করছি এবং তারপর যোগফল যোগ করছি। এই প্রোগ্রামটি সম্পূর্ণ হতে O(n) সময় নেয়। কিন্তু যদি আমরা O(1) বা ধ্রুবক সময়ের মধ্যে এটি সমাধান করতে চাই, তাহলে আমরা এই সিরিজ সূত্রটি ব্যবহার করতে পারি -
অ্যালগরিদম
squareNNatural(n)
begin sum := 0 for i in range 1 to n, do sum := sum + i^2 done return sum end
উদাহরণ
#include<iostream> using namespace std; long square_sum_n_natural(int n) { long sum = 0; for (int i = 1; i <= n; i++) { sum += i * i; //square i and add it with sum } return sum; } main() { int n; cout << "Enter N: "; cin >> n; cout << "Result is: " << square_sum_n_natural(n); }
আউটপুট
Enter N: 4 Result is: 30