if, else-if and else Statements
निर्णय लेना
Programs को लगातार conditions के आधार पर चुनना पड़ता है कि क्या करें — क्या user वयस्क है, क्या वह पास हुआ, क्या number धनात्मक है? C++ इसे if statements के परिवार से संभालता है। Condition कोई भी expression है जो true या false हो।
if statement
सबसे सरल रूप एक block को केवल तब चलाता है जब condition true हो:
int age = 20;
if (age >= 18) {
cout << "You are an adult.\n";
}You are an adult.
if-else
False स्थिति संभालने को एक else जोड़ें, तो दोनों में से ठीक एक block हमेशा चलता है:
int n = 7;
if (n % 2 == 0) {
cout << "Even\n";
} else {
cout << "Odd\n";
}Odd
else-if ladder
कई ranges में से चुनने को conditions को else if से जोड़ें। C++ इन्हें ऊपर से नीचे जाँचता है और पहली true पर रुक जाता है:
int marks = 82;
if (marks >= 90) {
cout << "Grade A\n";
} else if (marks >= 75) {
cout << "Grade B\n";
} else if (marks >= 50) {
cout << "Grade C\n";
} else {
cout << "Fail\n";
}Grade B
Nested if
आप एक if को दूसरे के अंदर रख सकते हैं ताकि दूसरी condition केवल तब जाँची जाए जब पहली सही हो:
if (loggedIn) {
if (isAdmin) {
cout << "Welcome, admin\n";
} else {
cout << "Welcome, user\n";
}
}अक्सर nested जाँच && से ज़्यादा साफ़ लिखी जा सकती है: if (loggedIn && isAdmin)।
Ternary पर एक त्वरित नोट
एक सरल या/अथवा के लिए जो value देता है, ternary operator छोटा है:
string result = (score >= 50) ? "Pass" : "Fail";
Ternary पर अधिक के लिए operators lesson देखें।
आम गलतियाँ
- Condition में
==(तुलना) की जगह=(assign) इस्तेमाल करना। - Braces भूलना, तो केवल पहली line
ifकी होती है। if (x)के बाद भटका semicolon रखना —if (x);कुछ नहीं करता।- Else-if ladder गलत क्रम में लगाना ताकि एक व्यापक condition संकरी वालों को छिपा दे।
एक number पढ़ें और if / else-if / else श्रृंखला से print करें कि वह धनात्मक, ऋणात्मक या शून्य है। फिर एक वर्ष के marks पढ़ें और ऊपर की ladder से grade print करें।
सारांश
ifcondition true होने पर एक block चलाता है।if-elseदो blocks के बीच चुनता है।- Else-if ladder कई ranges में से चुनती है, ऊपर से नीचे।
- Nested
ifपहली के अंदर दूसरी condition जाँचता है। - हमेशा braces इस्तेमाल करें, और तुलना को
==(न कि=)।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
C++ में if statement क्या है?
if statement किसी code block को केवल तब चलाता है जब कोई condition true हो। आप if (condition) { ... } लिखते हैं, और braces के अंदर का code तब चलता है जब condition true हो; वरना छोड़ दिया जाता है।C++ में if और if-else में क्या अंतर है?
if अपना block तब चलाता है जब condition true हो और वरना कुछ नहीं करता। if-else एक else block जोड़ता है जो condition false होने पर चलता है, तो दोनों में से ठीक एक block हमेशा चलता है।C++ में else-if ladder क्या है?
else if से जोड़ता है, हर एक को क्रम में जाँचते हुए जब तक एक true न हो, फिर वह block चलाकर बाकी छोड़ देता है। एक वैकल्पिक अंतिम else उस स्थिति को संभालता है जहाँ कोई मेल न खाए। यह grading या range जाँच के लिए आदर्श है।C++ में nested if क्या है?
if statement है जो किसी दूसरे if या else block के अंदर रखा जाता है। यह आपको दूसरी condition केवल पहली के संतुष्ट होने के बाद जाँचने देता है, जो एक से ज़्यादा कारक पर निर्भर निर्णयों के लिए उपयोगी है।C++ में if के साथ braces क्यों इस्तेमाल करूँ?
if केवल अगले एक statement को नियंत्रित करता है, जो बाद में एक और line जोड़ने पर bugs ला सकता है जब आप उसे if का हिस्सा मानें। हमेशा braces { } इस्तेमाल करना grouping स्पष्ट बनाता है और ये गलतियाँ रोकता है।