একটি সংখ্যা X দেওয়া আছে। লক্ষ্য হল ০ থেকে X পর্যন্ত যেসব সংখ্যার সাথে X-এর যোগফল (i + X) এবং XOR (i ^ X) একই ফলাফল দেয়, তাদের সংখ্যা বের করা।
i=0 থেকে X পর্যন্ত লুপ চালিয়ে (i + X) == (i ^ X) চেক করা হয়। সঠিক হলে কাউন্ট বাড়ানো হয়।
ইনপুট: X=6
আউটপুট: যোগ == XOR হয় এমন সংখ্যা: ২
ব্যাখ্যা: শুধু ০ এবং ১
ইনপুট: X=20
আউটপুট: সংখ্যা: ৮
ব্যাখ্যা: ০, ১, ২, ৩, ৮, ৯, ১০, ১১
- পূর্ণসংখ্যা X নেওয়া হয়।
sumisXOR(int x)ফাংশন x নিয়ে শর্ত পূরণকারী সংখ্যার কাউন্ট রিটার্ন করে।- i=0 থেকে x পর্যন্ত লুপে
(i + x) == (i ^ x)চেক করে count বাড়ানো হয়। - শেষে count রিটার্ন করা হয়।
#include#include using namespace std; int sumisXOR(int x){ int count = 0; for (int i = 0; i <= x; i++){ if((i + x) == (i ^ x)){ count++; } } return count; } int main(){ int X = 15; int nums = sumisXOR(X); cout << endl << "X-এর সাথে যোগ এবং XOR সমান হলে সংখ্যা: " << nums; return 0; }
উপরোক্ত কোড রান করলে আউটপুট (X=15 এর জন্য):
X-এর সাথে যোগ এবং XOR সমান হলে সংখ্যা: ১