सारांश
शर्त एक ऐसा व्यंजक है जिसका मान सत्य या असत्य होता है। यह पाठ अध्ययन करता है कि C++ में शर्तें कैसे बनाई जाती हैं: छह संबंधपरक संक्रियक, जो दो मानों की तुलना करते हैं और एक bool देते हैं; तीन तार्किक संयोजक, &&, || और !, जो शर्तों को तर्क के संयोजन, वियोजन और निषेध की तरह जोड़ते हैं; और वह प्राथमिकता जो उन्हें आपस में और अंकगणित के सापेक्ष क्रम में रखती है। यह उन दो विशेषताओं का भी अध्ययन करता है जिनमें C++ गणितीय लेखन से अलग हो जाती है: शृंखला 1 < x < 5, जो कंपाइल होती है पर वह अर्थ नहीं रखती जो दिखता है, और शॉर्ट-सर्किट गणना, जिसके कारण && और || के दूसरे संकार्य की गणना नहीं होती जब पहला परिणाम तय कर चुका हो, और इससे किसी जोखिम भरी संक्रिया की रक्षा की जा सकती है। अंत में यह डी मॉर्गन के नियमों से संयुक्त शर्तों के निषेध को, सत्यता सारणियों से जाँचकर, और अपने केंद्रीय उदाहरण को लेता है: अधिवर्ष की शर्त और उसका निषेध। इस इकाई में अभी निर्णय नहीं हैं: शर्तों की गणना होती है और वे true या false के रूप में छापी जाती हैं, और पाठ निर्णय उन्हें प्रोग्राम को नियंत्रित करने में लगाएगा।
अधिगम उद्देश्य
- C++ में ऐसी संयुक्त शर्तें लिखना जो “ 1 और 10 के बीच है, सिरों सहित” जैसे कथनों का अनुवाद करें।
- डी मॉर्गन के नियमों से किसी संयुक्त शर्त का निषेध करना और सत्यता सारणी से तुल्यता की जाँच करना।
- किसी संक्रिया की रक्षा के लिए शॉर्ट-सर्किट गणना का उपयोग करना, जैसे
count != 0 && total / count > 2में। 1 < x < 5लिखने की गलती पहचानना, यह समझाना कि वह क्या गणना करता है, और उसे सुधारना।
व्यंजक के रूप में शर्त
पाठ वर्ण, बूलियन, रूपांतरण और स्थिरांक ने प्रकार bool को उसके दो मानों true और false के साथ प्रस्तुत किया, और पाठ अंकगणितीय संक्रियाएँ ने दिखाया कि किसी व्यंजक का एक वृक्ष होता है, जिसे प्राथमिकता और साहचर्यता तय करती हैं, और एक प्रकार, जिसे उसके संकार्य तय करते हैं। यह पाठ दोनों विचारों को जोड़ता है। शर्त प्रकार bool का व्यंजक है: कोई स्टेटमेंट नहीं जो कुछ पूछता है, बल्कि एक गणना जिसका परिणाम एक उत्तर है। count < 10 की गणना वैसे ही होती है जैसे count + 1 की: संकार्य लिए जाते हैं, संक्रियक लागू होता है और एक मान मिलता है, बस वह मान संख्या के बजाय true या false होता है। यदि ऐसा है, तो अंकगणितीय व्यंजकों के लिए जो कुछ सही है, वह शर्तों के लिए भी सही है: उनकी प्राथमिकता होती है, उनका वृक्ष होता है, उन्हें नाम वाले चर में रखा जा सकता है (const bool inRange{…}) और छापा जा सकता है। इससे वह प्रश्न निकलता है जो पूरे पाठ में चलता है: कोई वाक्य दिया हो (“वर्ष अधिवर्ष है”, “आयु 18 और 65 के बीच है”), तो कौन-सा व्यंजक सभी संभव आँकड़ों के लिए ठीक वही सत्यता मान रखता है?
सामग्री लोड हो रही है…