यह एक ऐरे-आधारित पहेली है जिसमें आपको दो तत्वों वाले ऐरे के सभी नंबरों को 0 में बदलना है। ऐरे का एक तत्व 0 है और दूसरा 0 हो भी सकता है और नहीं भी।
इस पहेली को हल करने के लिए प्रोग्राम को गैर-शून्य तत्व ढूंढना होगा और उसे 0 में बदलना होगा।
बूलियन ऐरे पहेली को हल करने के लिए निम्नलिखित बाधाएं आवश्यक हैं:
- अनुमत ऑपरेशन केवल कॉम्प्लीमेंट है, अन्य ऑपरेशन अनुमत नहीं हैं।
- लूप और कंडीशनल स्टेटमेंट अनुमत नहीं हैं।
- सीधा असाइनमेंट भी अनुमत नहीं है।
बूलियन ऐरे पहेली को हल करने का प्रोग्राम
#include <iostream>
using namespace std;
void makeZero(int a[2]) {
a[a[1]] = a[!a[1]];
}
int main() {
int a[] = {1, 0};
makeZero(a);
cout << "arr[0] = " << a[0] << endl;
cout << "arr[1] = " << a[1];
return 0;
}
आउटपुट
arr[0] = 0 arr[1] = 0 आप अन्य तरीकों का भी उपयोग कर सकते हैं। जैसे यह जिसमें निगेशन ऑपरेशन की आवश्यकता नहीं है: a[a[1]] = a[a[0]]