Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में बिट ऑपरेटरों का उपयोग करके जांचें कि कोई संख्या धनात्मक, ऋणात्मक या शून्य है या नहीं

यहां हम बिट ऑपरेटरों का उपयोग करके जांच करेंगे कि कोई संख्या सकारात्मक है, या नकारात्मक या शून्य है। अगर हम n>> 31 की तरह शिफ्टिंग करते हैं, तो यह हर नेगेटिव नंबर को -1 में, हर दूसरे नंबर को 0 में बदल देगा। अगर हम -n>> 31 करते हैं, तो पॉजिटिव नंबर के लिए यह -1 वापस आ जाएगा। जब हम 0 के लिए करते हैं, तो n>> 31, और –n>> 31, दोनों 0 लौटाते हैं। उसके लिए हम नीचे दिए गए दूसरे सूत्र का उपयोग करेंगे -

1+(𝑛>>31)−(−𝑛>>31)

तो अब, अगर

  • n ऋणात्मक है:1 + (-1) - 0 =0
  • n धनात्मक है:1 + 0 - (-1) =2
  • n 0 है:1 + 0 - 0 =1

उदाहरण

#include <iostream>
#include <cmath>
using namespace std;
int checkNumber(int n){
   return 1+(n >> 31) - (-n >> 31);
}
int printNumberType(int n){
   int res = checkNumber(n);
   if(res == 0)
      cout << n << " is negative"<< endl;
   else if(res == 1)
      cout << n << " is Zero" << endl;
   else if(res == 2)
      cout << n << " is Positive" << endl;
}
int main() {
   printNumberType(50);
   printNumberType(-10);
   printNumberType(70);
   printNumberType(0);
}

आउटपुट

50 is Positive
-10 is negative
70 is Positive
0 is Zero

  1. पायथन प्रोग्राम यह जांचने के लिए कि कोई संख्या सकारात्मक है, नकारात्मक है या 0

    जब यह जांचना आवश्यक हो कि कोई संख्या धनात्मक, ऋणात्मक या 0 है, तो एक साधारण if स्थिति का उपयोग किया जा सकता है। नीचे उसी के लिए एक प्रदर्शन है - उदाहरण my_num = 58 if my_num >= 0:    if my_num == 0:       print("The number is equal to zero")    else:

  1. यह जांचने का कार्यक्रम कि क्या कोई संख्या धनात्मक, ऋणात्मक, विषम, सम, शून्य है?

    संख्या दी गई है, हमें यह जांचना है कि संख्या सम या विषम है और धनात्मक या ऋणात्मक है। एल्गोरिदम Step 1: input number Step 2: check number is greater than equal to 0 or not. If true then positive otherwise negative and if it 0 then number is 0. Step 3: if number is divisible by 2 then it’s even

  1. पायथन का उपयोग करके कैसे जांचें कि कोई संख्या सकारात्मक, नकारात्मक या शून्य है?

    if-elif-else का उपयोग करना num = float(input("Enter a number: ")) if num > 0:    print("Positive ") elif num == 0:    print("Zero") else:    print("Negative ") नेस्टेड if का उपयोग करना num = float(input("Enter a number: &q