Logical Operators In C Language जानिए हिंदी में!

सी लैंग्वेज में लॉजिकल ऑपरेटर क्या है? (What Is Logical Operators In C In Hindi)

Logical Operators का उपयोग दो और दो से ज्यादा conditions को combine करने के लिए किया जाता है Logical Operators के द्वारा रिजल्ट हमेशा Boolean वेल्यू मिलता है मतलब रिजल्ट True या False के रूप में मिलता है और True को हम 1 मानते है और False को 0 मानते है |

For Example -: सी लैंग्वेज में Logical Operators And (&&) रिजल्ट True रिटर्न करती है जब दोनों कंडीशन satisfied हो जाती है और अगर दोनों कंडीशन satisfied नहीं होती तो यह रिजल्ट में False रिटर्न करती है |

Logical Operators के उदाहरण ये है -: (&&, ||, ! )  इसमें “&& ” को हम AND Operator कहते है, “||”  को हम OR Operator कहते है |  ” ! ”  को हम NOT Operator कहते है | 

आइए अब हम इन सभी Operators के बारे में एक एक करके जानते है -:

Logical AND operator In C Language

Logical AND operator (&&) ऑपरेटर का उपयोग किन्ही दो conditions को चेक करने के लिए किया जाता है | यह ऑपरेटर दिए गए दोनो conditions को चेक करता है कि वो conditions सही है या नहीं | यदि दोनों conditions सही होती है तो ‘&&’ operator रिजल्ट में true रिटर्न करता है और अगर conditions सही नहीं है तो यह false रिटर्न करता है |  

आइए इसी चीज को हम एक टेबल के फॉर्म में समझते है |

Operand 1Operand 2Result
truetruetrue
truefalsefalse
falsetruefalse
falsefalsefalse

आइए एक उदाहरण देखते हैं -:

int a = 10 , b = 6 ;

मान लें कि हमारे पास निम्नलिखित Logical expression है:

( a==10 ) && (b<10 )

उपरोक्त expression में दोनों conditions a == 10 और b <10 true हैं, इसलिए Logical AND operator रिजल्ट में 1/True  रिटर्न करेगा | 

आइये Logical AND operator के कुछ और examples देखते है 

ExpressionIntermediate ExpressionResult
(a==4) && (b==2)false && false => false0
(a>100) && (b<10)false && true => false0
a && btrue && true => true1
a && 0true && false => false0

आखिर के दो examples पर गौर करे , इसमें हमने operands में variables और constants का उपयोग किया है मतलब लॉजिकल ऑपरेटर के साथ ओपेरंडस में हम expression के साथ साथ  variables और  constants का भी उपयोग कर सकते है और यही && ऑपरेटर के बारे में सबसे important बात है।

Logical AND operator (&&) में यदि पहला ओपेरंडस False होता है तो दूसरे Operand को चेक भी नहीं किया जाता | AND operator (&&) में एक भी Operand, False होता है तो यह ऑपरेटर रिजल्ट में हमेशा False ही रिटर्न करता है | 

आइए इस बात को हम एक उदाहरण से समझते है -:

int a = 10;
(a==21) && (a++);

उपरोक्त expression में a == 21 गलत है, इसलिए ऑपरेंड a ++ को चेक भी नहीं किया जाता है भले ही वह वो दूसरा ऑपरेंड सही है या गलत | दूसरा ऑपरेंड कुछ भी हो सीधे रिजल्ट दे दिया जाता है |

#include<stdio.h>
void  main()
{
    int a = 10, result;

    printf("Initial value of a is  : %d\n", a);

    // result of the logical expression is stored in result
    result = (a==20) && (a++); 

    printf("Final value of a is : %d\n", a);
    printf("Result of logical expression is : %d\n", result);

}

Output -:

Initial value of a is : 10
Final value of a is : 10
Result of logical expression is : 0

आपने देखा इस एक्साम्प्ले में expression में a == 20 गलत है पर ऑपरेंड a ++ तो सही था इसका रिजल्ट तो 11 आना चाहिए मगर कम्पाइलर ने इसे चेक ही नहीं किया क्योंकि पहला ऑपरेंड गलत था और इसी लिए पहला ऑपरेंड गलत होने के बाद कम्पाइलर ने a++ को रन ही नहीं किया |

आइये अब देखते है कि अगर पहला ओपेरंड सही होता तो रिजल्ट क्या आता | 

#include<stdio.h>
void  main()
{
    int a = 10, result;

    printf("Initial value of a is  a : %d\n", a);

    // result of the logical expression is stored in result
    result = (a==10) && (a++); 

    printf("Final value of a is : %d\n", a);
    printf("Result of logical expression is : %d\n", result);

}

Output -:

Initial value of a is  a : 10
Final value of a is : 11
Result of logical expression is : 1

देखिये पहले रिजल्ट में a की वैल्यू में कोई इन्क्रीमेंट नहीं हुवा था क्योकि पहला ऑपरेंड गलत होने के बाद Compiler ने उसे रन ही नहीं किया था और अब रिजल्ट जो आया है उसमे a की वैल्यू में इन्क्रीमेंट हुवा है क्योंकि पहले Operand के सही होने के बाद कम्पाइलर ने दूसरे ओपेरंडस को भी रन किया जिसके कारण a की वैल्यू में इन्क्रीमेंट हुवा | 

आपको मेरी बात समझ आयी कि मै आपको बताना क्या चाह रहा हूँ ? 

यदि हाँ तो निचे एक कमेंट जरूर बताईयेगा की आपको ये बात समझ आया या नहीं और अगर कुछ doubt हो तो कमेंट में बताये | 

चलिए अब हम Logical OR operator (||) के बारे में जानते है |

Logical OR operator In C Language

यह ऑपरेटर दिए गए दोनो conditions में से, यदि कोई भी एक conditions सही होती है तो रिजल्ट में true रिटर्न करता है और अगर दोनों conditions सही नहीं है तब यह false रिटर्न करता है |  

Operand 1Operand 2Result
truetruetrue
truefalsetrue
falsetruetrue
falsefalsefalse

चलिए एक example देखते है 

int a = 10, b = 9;

मान लें कि हमारे पास निम्नलिखित logical expression है:

(a<12) || (b<5)

उपरोक्त expression में पहला condition, a <12 सही है इसलिए Logical or operator दूसरे condition, b <5 जो की गलत है को चेक भी नहीं करेगा और सीधे रिजल्ट में 1/True  रिटर्न करेगा | 

Logical or operator एक भी कंडीशन सही होने पर रिजल्ट में true रिटर्न करता है और इस एक्साम्प्ले में पहला कंडीशन ही सही था इसलिए इसने दूसरे कंडीशन को चेक किये बिना ही रिजल्ट true रिटर्न कर दिया |

आइये Logical Or operator के कुछ और examples देखते है |

ExpressionIntermediate ExpressionResult
(a==4) || (b==2)false || false => false0
(a>10) || (b<10)false || true => true1
a || btrue || true => true1
a || 12.12true || true => true1

आखिर के Expression पे ध्यान दीजियेगा, (a || 12.12) इसमें हमने double type के Constant को ऑपरेंड के रूप में उपयोग किया है जो की Logical Or operator में  acceptable है |

जैसे कि मैंने आपको ऊपर बताया है कि अगर Logical Or operator का पहला ऑपरेंड सही होता है तो Logical Or operator दूसरे ऑपरेंड को चेक भी नहीं करता | आइए इसी बात हो हम निचे एक एक्साम्प्ले से समझते है | 

#include<stdio.h>

int main()
{
    int a = 10, result;

    printf("Initial value of a = %d\n", a);

    // result of the logical expression is stored in result
    result = (a==10) || (a--); 

    printf("Final value of a = %d\n", a);
    printf("Result of logical expression = %d\n", result);

    return 0;
}

Output -:

Initial value of a = 10
Final value of a = 10
Result of logical expression = 1

इस एक्साम्प्ले  पहले रिजल्ट में a की वैल्यू में कोई डेक्रेमेंट नहीं हुवा था क्योकि पहला ऑपरेंड सही था  Logical Or operator का पहला ऑपरेंड सही होता है तो Logical Or operator दूसरे ऑपरेंड को चेक भी नहीं करता |

चलिए अब हम Logical NOT operator (!) के बारे में जानते है |

Logical NOT operator In C Language

Logical NOT operator (!) बूलियन टाइप का रिजल्ट रिटर्न करता है | यदि कंडीशन True है तो NOT operator (!) उसे false बनाता है और रिजल्ट में false रिटर्न करता है और अगर कंडीशन False होता है तो NOT operator (!) उसे True बनाके रिजल्ट में रिटर्न करता है |

OperandResult
truefalse
falsetrue

आइए इसको हम एक प्रोग्राम की मदद से और अच्छे से समझते है -:

int a = 11 , b = 7  ;

logical expression

!(a > 5)

इस Example में (a > 5) सही है मगर NOT operator (!) रिजल्ट में False रिटर्न करता है क्योकि यही का बेहेवियर है |

Example -:

#include<stdio.h>
int main()
{
    int a = 110, result;
    printf("Initial value of a = %d\n", a);

    // result of the logical expression is stored in result
    result = (a>10); 

    printf("Is a > 10 : %d\n", result);
    printf("After applying not operator\n");
    printf("Is a > 10 : %d\n", !result);

    // Signal to operating system everything works fine
    return 0;
}

Output -:

Initial value of a = 110
Is a > 10 : 1
After applying not operator
Is a > 10 : 0

Conclusion

दोस्तों आशा करता हु कि आज के इस पोस्ट को पढ़ने के बाद आपको सी लैंग्वेज में लॉजिकल ऑपरेटर क्या है? (What is Logical Operators In C In Hindi) और ये कितने प्रकार के होते है (Types of Logical Operators in C Language In Hindi) से संबंधित सभी जानकारी मिल गई होगी |

अगर आप सी लैंग्वेज का Complete Tutorial चाहते है तो मेरे इस पोस्ट C Language Tutorial In Hindi को देखे यहाँ आपको C Programming Language के सभी टॉपिक्स step by step मिल जाएगी |

दोस्तों आशा करता हु कि आपको ये पोस्ट पसंद आई होगी और आपको Logical Operators In C के बारे में काफी जानकरी हुई होगी |

अगर आपको ये पोस्ट पसंद आया है तो इस पोस्ट को अपने अपने दोस्तों को शेयर करना न भूलिएगा ताकि उनको भी ये जानकारी प्राप्त हो सके |

अगर आपको अभी भी Logical Operators In C Language से संबंधित कोई भी प्रश्न या Doubt है तो आप जरूर बताये मैं आपके सभी सवालों का जवाब दूँगा और ज्यादा जानकारी के लिए आप हमसे संपर्क कर सकते है |

एसी ही नया टेक्नोलॉजी ,Programming Language, Coding , C Language, C++, Python Course , Java Tutorial से रिलेटेड जानकारियाँ पाने के लिए हमारे इस वेबसाइट masterprogramming.in को सब्सक्राइब कर दीजिए | जिससे हमारी आने वाली नई पोस्ट की सूचनाएं जल्दी प्राप्त होगी |

दोस्तों आज की पोस्ट कैसे लगी निचे कमेंट में जरूर बताएं और अपने दोस्तों को Whatsapp, Facebook, Instagram, Twitter पर शेयर जरूर करे |

Thank you आपका दिन मंगलमय हो |

पढ़ते रहिए और बढ़ते रहिए | Keep Reading and Keep Growing

Jeetu Sahu is A Web Developer | Computer Engineer | Passionate about Coding, Competitive Programming and Blogging

Leave a Comment