এখানে আমরা দেখব যে একটি সংখ্যাকে দুই বা ততোধিক ধারাবাহিক সংখ্যার যোগফল হিসাবে উপস্থাপন করা যায় কি না। ধরুন একটি সংখ্যা 12। এটিকে 3+4+5 হিসাবে উপস্থাপন করা যেতে পারে।
এই সমস্যা সমাধানের জন্য একটি সরাসরি এবং সহজ পদ্ধতি আছে। যদি একটি সংখ্যা 2 এর ঘাত হয়, তবে এটিকে কিছু ধারাবাহিক সংখ্যার যোগফল হিসাবে প্রকাশ করা যায় না। দুটি তথ্য আছে যা আমাদের মনে রাখতে হবে।
- যেকোন দুটি পরপর সংখ্যার যোগফল বিজোড়, তাহলে তাদের একটি বিজোড় হবে, আরেকটি জোড় হবে।
- দ্বিতীয় তথ্য হল 2 n =2 (n-1) + 2 (n-1) .
উদাহরণ
#include <iostream> using namespace std; bool isSumofconsecutiveNumbers(int n) { if((n & (n-1)) && n){ return true; } else { return false; } } int main() { int num = 36; if(isSumofconsecutiveNumbers(num)){ cout << "Can be represented"; } else { cout << "Cannot be represented"; } }
আউটপুট
Can be represented