এই সমস্যায়, আমরা একটি সংখ্যা n দেওয়া হয়. আমাদের কাজ হল একটি প্রোগ্রাম তৈরি করা যাতে 1 + 1/2 + 1/3 + 1/4 + .. + 1/n C++ এ সিরিজের যোগফল পাওয়া যায়। .
কোডের বিবরণ − এখানে, আমরা 1 + 1/2 + 1/3 + 1/4 + .. + 1/n nম পদ পর্যন্ত সিরিজের যোগফল খুঁজে পাব। সিরিজটি একটি সুরেলা অগ্রগতি সিরিজ।
হারমোনিক অগ্রগতি একটি সিরিজ যার বিপরীত একটি গাণিতিক অগ্রগতি হবে। অর্থাৎ যদি একটি সুরেলা অগ্রগতির জন্য A1, A2, A3... An, একটি গাণিতিক অগ্রগতি 1/A1, 1/A2, 1/A3 আছে৷
প্রথমে, সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট
n = 5
আউটপুট
2.59286
ব্যাখ্যা
যোগফল =1 + ½ + ⅓ + ¼ + ⅕ + ⅙ + 1/7 =2.59286
সমাধান পদ্ধতি
সমস্যা সমাধানের জন্য, আমরা কেবল লুপগুলি ব্যবহার করব কারণ HP-এর যোগফলের জন্য কোনও নির্দিষ্ট সূত্র নেই৷
অ্যালগরিদম
শুরু করুন − sumVal =0;
- ধাপ 1 − i -> 1 থেকে n.
- এর জন্য লুপ
- ধাপ ১.১ − sumVal, sumVal +=1/i. আপডেট করুন
- ধাপ 2 − প্রিন্ট sumVal.
আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম
উদাহরণ
#include <iostream> using namespace std; float calcSeriesSum(int n){ float sumVar = 0.00; for(float i = 1; i <= n; i++){ sumVar += (1/i); } return sumVar; } int main(){ int n = 7; cout<<"The sum of series till "<<n<<" is "<<calcSeriesSum(n); return 0; }
আউটপুট
The sum of series till 7 is 2.59286