इस खंड में हम देखेंगे कि कैसे जांचा जाए कि कोई संख्या विषम है या यहां तक कि किसी भी प्रकार के सशर्त कथनों जैसे (<, <=, !=,>,>=, ==) का उपयोग किए बिना।
हम सशर्त बयानों का उपयोग करके आसानी से विषम या सम की जांच कर सकते हैं। हम संख्या को 2 से विभाजित कर सकते हैं, फिर जांच सकते हैं कि शेषफल 0 है या नहीं। यदि 0 है, तो यह सम है। अन्यथा हम संख्या और 1 के साथ प्रदर्शन और संचालन कर सकते हैं। यदि उत्तर 0 है, तो यह सम है, अन्यथा विषम है।
यहां किसी भी कंडीशनल स्टेटमेंट का इस्तेमाल नहीं किया जा सकता है। हम थियोड या सम को जांचने के लिए दो अलग-अलग तरीके देखेंगे।
विधि 1
यहां हम स्ट्रिंग्स की एक सरणी बनाएंगे। सूचकांक 0 स्थिति "सम" धारण करेगी, और सूचकांक 1 स्थिति "विषम" धारण करेगी। हम सीधे परिणाम प्राप्त करने के लिए संख्या को 2 से विभाजित करने के बाद शेष को इंडेक्स के रूप में भेज सकते हैं।
उदाहरण कोड
#include <iostream> using namespace std; main() { int n; string arr[2] = {"Even", "Odd"}; cout << "Enter a number: "; //take the number from the user cin >> n; cout << "The number is: " << arr[n%2]; //get the remainder to choose the string }
आउटपुट 1
Enter a number: 40 The number is: Even
आउटपुट 2
Enter a number: 89 The number is: Odd
विधि 2
यह दूसरी विधि है। इस तरीके में हम कुछ ट्रिक्स का इस्तेमाल करेंगे। यहां लॉजिकल और बिटवाइजऑपरेटर्स का इस्तेमाल किया जाता है। सबसे पहले हम संख्या और 1 के साथ प्रदर्शन और संचालन कर रहे हैं। फिर तार्किक का उपयोग करके और विषम या सम को प्रिंट करने के लिए। जब बिटवाइज़ AND का परिणाम 1 होता है, तो केवल तार्किक ANDऑपरेशन विषम परिणाम लौटाएगा, अन्यथा यह सम वापस आ जाएगा।
उदाहरण कोड
#include <iostream> using namespace std; main() { int n; string arr[2] = {"Even", "Odd"}; cout << "Enter a number: "; //take the number from the user cin >> n; (n & 1 && cout << "odd")|| cout << "even"; //n & 1 will be 1 when 1 is present at LSb, so it is odd. }
आउटपुट 1
Enter a number: 40 even
आउटपुट 2
Enter a number: 89 odd