এই সমস্যায়, আমাদের একটি সংখ্যা দেওয়া হয়েছে। আমাদের কাজ হল প্রথম N প্রাকৃতিক সংখ্যাগুলির যোগফল খুঁজে বের করা যা 2 এবং 7 দ্বারা বিভাজ্য।
সুতরাং, এখানে আমাদের একটি সংখ্যা দেওয়া হবে, প্রোগ্রামটি 1 থেকে N এর মধ্যে সংখ্যার যোগফল খুঁজে পাবে যা 2 এবং 7 দ্বারা বিভাজ্য৷
সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,
ইনপুট −
N = 10
আউটপুট −
37
ব্যাখ্যা −
sum = 2 + 4 + 6 + 7 + 8 + 10 = 37
সুতরাং, সমস্যা সমাধানের প্রাথমিক ধারণা হল 2 বা 7 দ্বারা বিভাজ্য সমস্ত সংখ্যা খুঁজে বের করা। এই যোগফল হবে −
Sum of numbers divisible by 2 + sum of numbers divisible by 7 - sum of number divisible by 14.
এই সমস্ত যোগফল A.P. সূত্র ব্যবহার করে তৈরি করা যেতে পারে,
S2 = [( (N/2)/2) * ( (2*2)+((N/2-1)*2) )] S7 = [( (N/7)/2) * ( (2*7)+((N/7-1)*7) )] S14 = [( (N/14)/2) * ( (2*14)+((N/2-1)*14) )]
চূড়ান্ত যোগফল,
Sum = S2 + S7 - S14 Sum = [( (N/2)/2) * ( (2*2)+((N/2-1)*2) )] + [( (N/7)/2) * ( (2*7)+((N/7-1)*7) )] - [( (N/14)/2) * ( (2*14)+((N/2-1)*14) )]
উদাহরণ
সমাধান চিত্রিত করার জন্য প্রোগ্রাম,
নেমস্পেস std;int findSum(int N) { রিটার্ন ( ((N/2)*(2*2+(N/2-1)*2)/2) + (N) ব্যবহার করে#include <iostream> using namespace std; int findSum(int N) { return ( ((N/2)*(2*2+(N/2-1)*2)/2) + ((N/7)*(2*7+(N/7-1)*7)/2) - ((N/14)*(2*14+(N/14-1)*14)/2) ); } int main(){ int N = 42; cout<<"The sum of natural numbers which are divisible by 2 and 7 is "<<findSum(N); return 0; }
আউটপুট
The sum of natural numbers which are divisible by 2 and 7 is 525