[6]-IF ELSE
आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम if-else statement के बारे में जानेंगे. इससे पहले comparison operator के बारे में जानना आवश्यक है अतः इसकी जानकारी नीचे दी जा रही है. operator का मतलब है चिन्ह (जैसे की +, - ...). नीचे दिए गए comparison operator Boolean output देते हैं, मतलब ये यह बताते हैं की दिया गया statement true है या false
अब हम देखते हैं की इनका उपयोग if else में कैसे करते हैं.
if statement का format निम्न है.
if(boolean expression1) {
statement1;
} else if(boolean expression2) {
statement2;
}
.....
....
....
else {
statementN;
}
boolean expression वह है जिसकी value true हो या false. अगर boolean expression1 का मान true है तो सिर्फ statement1 execute होगा. अगर boolean expression1 का मान false है तो हम boolean expression2 देखेंगे. अगर यह true है तो statement2 execute होगा. इसी तरह आगे बढ़ते जायेंगे. जहाँ भी हमें boolean expression का मान true प्राप्त होगा केवल उसी से सम्बन्धित statement execute होगा, कोई और नहीं. अगर कोई boolean expression true नहीं है तो else के अन्दर जो statement है वो execute होगा. इसे एक उदहारण के द्वारा समझते हैं.
नीचे दिए गए example में दिए गए total marks और obtained marks के अनुसार हम percent निकालेंगे और percent के आधार पर grade print करेंगे.
ऊपर दिखाई गई values के अनुसार percent की value 54 आएगी.(यहाँ गौर करने लायक बात यह है कि percent कि value 54.4 नहीं आएगी क्योंकि हमने अपने program को int बनाया है. ) चूंकि percent 60 से छोटा है अतः पहली वाली condition (percent >= 60) का result false आएगा आएगा इसलिए हम अगली वाली condition (percent >= 45) check करेंगे जो कि true है अतः स्क्रीन पर print होगा
अब चूंकि कोई भी condition true होने पर उसके अन्दर वाले statement ही execute होते हैं. अतः यह C/C++ program और कुछ print नहीं करेगा. यहाँ एक बात ध्यान देने लायक है कि हमने printf के अन्दर \n का उपयोग किया है परन्तु यह print नहीं हुआ, क्योंकि \n का मतलब है new line character अर्थात \n के बाद जो भी print होगा वो अगली line में print होगा. यहाँ आप \n को हटाकर run करें और output देखें. इसी तरह दिए गए example में obtained_marks की अलग अलग value रख कर C/C++ program को run करें और output को ध्यान से देखें. अगर इससे संबधित कोई सवाल आपके पास है तो नीचे comment के माध्यम से पूछ सकते हैं.
अगले topic में हम if else के कुछ और अलग तरह के example देखेंगे
- < और > : जैसे की 3 > 1 का output है true जबकि 3 < 1 ka output है false. इसी तरह 3 > 3 का output false होगा 3 से बड़ा 3 नहीं है. 3 < 3 का output भी false है.
- <= और >= : ये ऊपर वाले की तरह ही हैं परन्तु 3 >= 3 और 3 <= 3 का output true हो जायेगा. ध्यान रहे की <= की जगह =< का उपयोग नहीं कर सकते. = का चिन्ह > या < के बाद ही आना चाहिए.
- == : यह बताता है की दो value बराबर हैं या नहीं. यह int, char, आदि सभी को compare कर सकता है. याद रहे की यह = से अलग है. = assignment operator है जो की बाये और लिखे variable को दाई और लिखी value देता है, जबकि == दोनों और लिखे variable या value को compare करता है.
अब हम देखते हैं की इनका उपयोग if else में कैसे करते हैं.
if statement का format निम्न है.
if(boolean expression1) {
statement1;
} else if(boolean expression2) {
statement2;
}
.....
....
....
else {
statementN;
}
boolean expression वह है जिसकी value true हो या false. अगर boolean expression1 का मान true है तो सिर्फ statement1 execute होगा. अगर boolean expression1 का मान false है तो हम boolean expression2 देखेंगे. अगर यह true है तो statement2 execute होगा. इसी तरह आगे बढ़ते जायेंगे. जहाँ भी हमें boolean expression का मान true प्राप्त होगा केवल उसी से सम्बन्धित statement execute होगा, कोई और नहीं. अगर कोई boolean expression true नहीं है तो else के अन्दर जो statement है वो execute होगा. इसे एक उदहारण के द्वारा समझते हैं.
नीचे दिए गए example में दिए गए total marks और obtained marks के अनुसार हम percent निकालेंगे और percent के आधार पर grade print करेंगे.
#include <stdio.h>
int main() {
int total_marks = 500;
int obtained_marks = 272;
int percent = obtained_marks*100/total_marks;
if(percent >= 60) {
printf("Congrats!! You passed in 1st division.\n");
printf("Your percentage is %d.\n",percent);
}
else if(percent >= 45) {
printf("You passed in 2nd division.\n");
printf("Your percentage is %d.\n",percent);
}
else if(percent >= 33) {
printf("You just passed in 3rd division.\n");
printf("Your percentage is %d.\n",percent);
}
else {
printf("Sorry! you failed.\n");
printf("Your percentage is %d.\n",percent);
}
scanf("%s");
return 1;
}
ऊपर दिखाई गई values के अनुसार percent की value 54 आएगी.(यहाँ गौर करने लायक बात यह है कि percent कि value 54.4 नहीं आएगी क्योंकि हमने अपने program को int बनाया है. ) चूंकि percent 60 से छोटा है अतः पहली वाली condition (percent >= 60) का result false आएगा आएगा इसलिए हम अगली वाली condition (percent >= 45) check करेंगे जो कि true है अतः स्क्रीन पर print होगा
You passed in 2nd division.
Your percentage is 54
अब चूंकि कोई भी condition true होने पर उसके अन्दर वाले statement ही execute होते हैं. अतः यह C/C++ program और कुछ print नहीं करेगा. यहाँ एक बात ध्यान देने लायक है कि हमने printf के अन्दर \n का उपयोग किया है परन्तु यह print नहीं हुआ, क्योंकि \n का मतलब है new line character अर्थात \n के बाद जो भी print होगा वो अगली line में print होगा. यहाँ आप \n को हटाकर run करें और output देखें. इसी तरह दिए गए example में obtained_marks की अलग अलग value रख कर C/C++ program को run करें और output को ध्यान से देखें. अगर इससे संबधित कोई सवाल आपके पास है तो नीचे comment के माध्यम से पूछ सकते हैं.
अगले topic में हम if else के कुछ और अलग तरह के example देखेंगे
[7]-IF ELSE -2
आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम if else के कुछ और example देखते हैं.
[8]-अगले topic में हम switch case statement के बारे में जानेंगे.
- सबसे basic example.
#include <stdio.h> int main() { int percent = 45; if(percent >= 33) { printf("Congrats!! You passed.\n"); } else { printf("Sorry.! you failed\n"); } scanf("%s"); return 1; }
ऊपर दिए गए example में percent की value change कर करके program को run करके देखें. सबसे पहले यह check करेगा कि percent की value 33 के बराबर या ज्यादा है [if(percent >= 33)] अगर ऐसा है तो screen पर print होगाCongrats!! You passed.
अन्यथा print होगा (else)Sorry.! you failed
- यह जरूरी नहीं कि हमें { } के अंदर कुछ लिखना ही पड़े, हम इसे खाली भी छोड़ सकते हैं. इस example में हम गाड़ी की speed लेंगे और अगर यह 60 से ज्यादा है तो warning print करेंगे अन्यथा कुछ नहीं करेंगे.
#include <stdio.h> int main() { int speed = 65; if(speed > 60) { printf("Warning: Speed is in danger zone.\n"); } else { } scanf("%s"); return 1; }
इसमें speed की value बदल बदलकर program run करे और देखे क्या print होता है. अगर speed 60 या इससे कम है तो कुछ print नहीं होगा. इस program को हम इस प्रकार से भी लिख सकते हैं.#include <stdio.h> int main() { int speed = 65; if(speed > 60) { printf("Warning: Speed is in danger zone.\n"); } scanf("%s"); return 1; }
else वाले भाग में अगर हम कुछ नहीं चाहते हो तो else लिखना जरूरी नहीं है जैसा कि ऊपर program में दिखाया गया है.
[8]-अगले topic में हम switch case statement के बारे में जानेंगे.
आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम switch case statement का उपयोग करना सीखेंगे. इसकी if else statement से बहुत समानता है. वास्तव में बिना switch case statement के भी सारा काम if else के द्वारा भी किया जाता है परन्तु इसके उपयोग से कई बार हमें आसानी हो जाती है. इसे हम एक example द्वारा समझते हैं. नीचे दिए गए example में दो integer दिए गए हैं. हम एक variable की value के द्वारा decide करेंगे कि उनको जोड़ना है या घटाना है...
अब इसे समझते हैं. हमने एक variable c define किया है जिसका type char है और value s है. (char के बारे में जानने के लिए मेरे पिछले लेख में जाएँ) अब code को ध्यान से देखें. switch के अंदर लिखे गए variable c का मान हर एक case लिखे गए मान से compare किया जाता है. जैसे कि इस example में c का मान s है. पहले case में लिखा गया मान a है इसलिए इस case के अंदर लिखे गए statements execute नहीं होंगे. इसी तरह आगे बढते जायेंगे. switch(c) अंदर लिखे गए c का मान case 's': में लिखे s से match हो जायेगा इसलिए result variable में v1 और v2 के difference का मान आ जायेगा और screen पर print होगा Result of substraction is 14. break statement run होने पर यह switch() { } block से बाहर आ जायेगा. अगर break नहीं लिखा जाता तो यह किसी एक case match होने के बाद आगे के सारे case execute कर देता चाहे वो switch() के अंदर लिखे variable से match हो या न हो. अगर कोई भी case match न हो तो default के अंदर लिखे statement execute हो जाते हैं. ऊपर दिए program में c के अलग अलग मान देकर program run करे और output देखें.
यहाँ एक और ध्यान देने योग्य बात है कि हमने float को print करने के लिए printf में %f use किया है.
[9]-अगले लेख में हम for loop के बारे में जानेंगे.
#include <stdio.h>
int main() {
float v1 = 23;
float v2 = 9;
float result;
char c = 's';
switch(c) {
case 'a':
result = v1 + v2;
printf("Result of addition is %f \n", result);
break;
case 's':
result = v1 - v2;
printf("Result of subtraction is %f \n", result);
break;
case 'm':
result = v1 * v2;
printf("Result of multiplication is %f \n", result);
break;
default:
printf("No operation selected.\n");
}
scanf("%s");
return 1;
}
अब इसे समझते हैं. हमने एक variable c define किया है जिसका type char है और value s है. (char के बारे में जानने के लिए मेरे पिछले लेख में जाएँ) अब code को ध्यान से देखें. switch के अंदर लिखे गए variable c का मान हर एक case लिखे गए मान से compare किया जाता है. जैसे कि इस example में c का मान s है. पहले case में लिखा गया मान a है इसलिए इस case के अंदर लिखे गए statements execute नहीं होंगे. इसी तरह आगे बढते जायेंगे. switch(c) अंदर लिखे गए c का मान case 's': में लिखे s से match हो जायेगा इसलिए result variable में v1 और v2 के difference का मान आ जायेगा और screen पर print होगा Result of substraction is 14. break statement run होने पर यह switch() { } block से बाहर आ जायेगा. अगर break नहीं लिखा जाता तो यह किसी एक case match होने के बाद आगे के सारे case execute कर देता चाहे वो switch() के अंदर लिखे variable से match हो या न हो. अगर कोई भी case match न हो तो default के अंदर लिखे statement execute हो जाते हैं. ऊपर दिए program में c के अलग अलग मान देकर program run करे और output देखें.
यहाँ एक और ध्यान देने योग्य बात है कि हमने float को print करने के लिए printf में %f use किया है.
[9]-अगले लेख में हम for loop के बारे में जानेंगे.
आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम for loop के बारे में और जानेंगे. for loop से पहले हम एक और operator के बारे में बात करते हैं.
%: किसी संख्या को दूसरी से भाग देने पर बचने वाला शेष हम इसके द्वारा जान सकते हैं. कुछ example नीचे दिए जा रहे हैं.
अब हम for loop को एक example से समझते हैं. इस example में हम 1 से 10 तक की संख्याओ के square print करेंगे.
सबसे पहले 2 variable i, sq declare किये गए हैं. for() के अंदर ध्यान से देखें. इसमें 2 जगह ; का चिन्ह लगा होने चाहिए जो इसके अंदर लिखे हुए को 3 भागो में बांटता है. program किस तरह आगे बढ़ता है नीचे बताया गया है.
ऊपर दिए program को run करके output देखे. अपने अनुसार value change करके run करें और output देखें. नीचे एक और program दिया जा रहा है. जो 1 से 10 तक हर संख्या के लिए print करेगा कि वह सम है या विषम.
ऊपर दिए गए program में for loop उसी तरह से चलेगा जैसे पहले बताया गया था और i के 1 से 10 तक हर एक मान के लिए for वाले {} block के अंदर लिखे statement execute होंगे. यहाँ हमने {} के अंदर switch case statement लिखा हुआ है जो हमने पिछले लेख में पढ़ा था. पहली बार जब for के अंदर switch case में आयेंगे तो i का मान 1 होगा अतः i%2 का मान 1 आएगा जोकि case 1 से match होगा इसलिए print होगा 1 is odd. जब दूसरी बार for के अंदर switch case में आयेंगे तो i का मान 2 होगा इसलिए i%2 का मान 0 आएगा जोकि case 0 से match होगा इसलिए print होगा 2 is even. इसी तरह आगे बढते जायेंगे.
अगले लेख में हम array और runtime पर input लेना सीखेंगे. जिससे यह समझ में आ जायेगा कि हर program के अंत में scanf("%s") क्यों लिखते हैं.
%: किसी संख्या को दूसरी से भाग देने पर बचने वाला शेष हम इसके द्वारा जान सकते हैं. कुछ example नीचे दिए जा रहे हैं.
- int a = 15 % 2;यहाँ a का मान 1 हो जायेगा क्योंकि 15 में 2 का भाग देने पर शेष 1 प्राप्त होगा.
- int b = 254 % 2;यहाँ b का मान 0 हो जायेगा क्योंकि 254 में 2 का भाग देने पर शेष 0 प्राप्त होगा.
- int c = 37 % 10;यहाँ c का मान 7 हो जायेगा क्योंकि 37 में 10 का भाग देने पर शेष 7 प्राप्त होगा.
अब हम for loop को एक example से समझते हैं. इस example में हम 1 से 10 तक की संख्याओ के square print करेंगे.
1
2
3
4
5
6
7
8
9
10
11
12
13
| #include <stdio.h> int main() { int i; int sq; for (i=1; i<=10; i = i+1) { sq = i*i; printf ( "square of %d is %d.\n" , i, sq); } scanf ( "%s" ); return 1; } |
सबसे पहले 2 variable i, sq declare किये गए हैं. for() के अंदर ध्यान से देखें. इसमें 2 जगह ; का चिन्ह लगा होने चाहिए जो इसके अंदर लिखे हुए को 3 भागो में बांटता है. program किस तरह आगे बढ़ता है नीचे बताया गया है.
- सबसे पहले भाग में initialization statement आते हैं. अगर एक से ज्यादा statement हैं तो ; लगाकर लिखते हैं. इस भाग में लिखे गए statement केवल एक बार execute होते हैं. इस example में ये statement i = 1 है अतः सबसे पहले i की value 1 हो जाएगी.
- दूसरे भाग में सिर्फ एक boolean statement होती है जिसका output true या false होता है. पहला भाग execute होने के बाद यह भाग check होता है. अगर यह true है तो हम for के साथ { } के अंदर लिखे सारे statement एक बार execute करते हैं. इस example में {} के अंदर sq का मान 1 हो जायेगा क्योँकि अभी i का मान 1 है, उसके बाद screen पर print होगा square of 1 is 1.
- इसके बाद तीसरा भाग execute होता है, और फिर से दूसरा भाग check करते हैं अगर वह true है तो तो हम फिर से {} के अंदर लिखे सारे statement execute हो जाते है. फिर से तीसरा भाग run होता है और फिर से दूसरा भाग check करते हैं और वह true है तो फिर से {} के अंदर लिखे statement execute कर देते हैं.. यह तब तक चलता रहता है जब दूसरा भाग false नहीं हो जाता. इस example में i का मान 2 हो जायेगा जिससे i <= 10 true हो जायेगा और अब {} के अंदर sq का मान 4 हो जायेगा क्योंकि i का मान 2 है. इसी तरह i का मान बढ़ता रहेगा और {} के अंदर लिखे statement execute होते रहेंगे. जब i का मान 11 हो जायेगा तब i <= 10 false आ जायेगा और for loop खत्म हो जायेगा.
ऊपर दिए program को run करके output देखे. अपने अनुसार value change करके run करें और output देखें. नीचे एक और program दिया जा रहा है. जो 1 से 10 तक हर संख्या के लिए print करेगा कि वह सम है या विषम.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| #include <stdio.h> int main() { int i; int sq; for (i=1; i<=10; i = i+1) { switch (i%2) { case 0: printf ( "%d is even.\n" , i); break ; case 1: printf ( "%d is odd.\n" , i); break ; } } scanf ( "%s" ); return 1; } |
ऊपर दिए गए program में for loop उसी तरह से चलेगा जैसे पहले बताया गया था और i के 1 से 10 तक हर एक मान के लिए for वाले {} block के अंदर लिखे statement execute होंगे. यहाँ हमने {} के अंदर switch case statement लिखा हुआ है जो हमने पिछले लेख में पढ़ा था. पहली बार जब for के अंदर switch case में आयेंगे तो i का मान 1 होगा अतः i%2 का मान 1 आएगा जोकि case 1 से match होगा इसलिए print होगा 1 is odd. जब दूसरी बार for के अंदर switch case में आयेंगे तो i का मान 2 होगा इसलिए i%2 का मान 0 आएगा जोकि case 0 से match होगा इसलिए print होगा 2 is even. इसी तरह आगे बढते जायेंगे.
अगले लेख में हम array और runtime पर input लेना सीखेंगे. जिससे यह समझ में आ जायेगा कि हर program के अंत में scanf("%s") क्यों लिखते हैं.
[10]-आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए ये सीखते हैं कि हम runtime पर यानि जिस समय program run हो रहा है तब input कैसे लेते हैं. इसे एक example से समझते हैं. नीचे दिए गए example में हम user से एक संख्या input में लेंगे और उसके बाद यह print करेंगे कि वह संख्या सम है या विषम.
इस program को run करे. यह screen पर print करेगा Please enter a number: और रुक जायेगा. कोई भी संख्या type करके enter दबा दें. इसके बाद यह print करेगा कि आपने कौन सी संख्या type कि थी और यह भी बताएगा कि यह सम(even) है या विषम(odd). अब देखते हैं यह काम कैसे करता है.
इस program में सबसे पहले हमने printf("Please enter a number: "); लिखा है जिससे आप परिचित ही हैं कि यह screen पर क्या print करेगा. इसके बाद हमने variable i define किया है जो उस मान को ग्रहण करेगा जो हम input लेंगे. इसके बाद वाली line को ध्यान से देखिये जिसमे लिखा है scanf("%d", &i);
scanf printf की तरह ही काम करता है. इसका पहला argument "%d" का ठीक वही मतलब है जो printf में होता था, इसके द्वारा हम यह बताते हैं input में int लेंगे. दूसरा argument &i यह बताता है कि जो input लेंगे वह किस variable में store होगा. (यहाँ variable से पहले & चिन्ह लगाना आवश्यक होता है इसका कारण आगे समझेंगे जब pointer के बारे में पढेंगे.) अगर आप screen में 25 enter करेंगे तो i का मान 25 हो जायेगा. उसके बाद वाला program पिछले लेखो के अनुसार आप आसानी से समझ सकते हैं - हमने screen पर उस संख्या को print किया है जो आपने enter किया था. यहाँ यह ध्यान रहे % भाग देने से बचने वाला शेष दे देता है. अतः उस संख्या 2 में का भाग देने पर यही शेष 0 आता है तो हमने print किया है कि Number is even अन्यथा यह print किया है कि Number is odd.
हर program के अंत में scanf लिखने का कारण: अगर आप windows में program run कर रहे है तो एक काली window खुलती है जिसमे output दिखता है परन्तु जैसे ही program समाप्त होता है यह काली window बंद हो जाती है. अंत में scanf लिखने से काली window बंद नहीं होती क्योकि वो हमारे input का wait करती है. अगर ये नहीं लिखेंगे तो program इतनी जल्दी run होकर काली window बंद हो जायेगी कि हम अपने program का output ही नहीं देख पाएंगे.
अब समझते हैं Array के बारे में.
हम variable के बारे में जान चुके हैं कि हर variable कोई value store कर सकता है परन्तु variable define करते समय यह बताना होता है कि वह किस type की value store करेगा integer, character etc. Array एक से अधिक value store कर सकता है. अगर आप 100 int store करना चाहते तो उसे एक array में कर सकते हैं. इसे एक example कि सहायता से समझते है कि एक से अधिक variable Array में कैसे store करते हैं.
नीचे दिए गए example में 0 से 9 तक संख्याओं के square array में store करेंगे और उन्हें print करेंगे. पहले इस program को run करके देखें.
अब इसे समझते हैं. int arr[10]; arr variable define कर रहा है जो 10 int store कर सकता है. ध्यान रहे यह केवल int store कर सकता है. ये सारे int इसमें number से store रहते हैं. ध्यान रहे कि इनकी numbering 0 से start होती है जैसे कि इस 10 int की Array arr में पहला int arr[0] पर होगा, दूसरा arr[1] पर ... ऊपर हमने arr कि size 10 रखी है अतः यह 10 int(arr[0] से arr[9]) ही store कर सकता है. इसके बाद के program को आप समझ ही सकते हैं. for loop के अंदर (जो कि 10 बार run होगा) जब हम पहली बार आयेंगे तो i का मान 0 होगा अतः arr[0] (arr array का पहला int) में 0 आ जायेगा इसी तरह आगे बढते हुए जब for loop के अंदर अंतिम बार आयेंगे तो array arr का अंतिम int(arr[9]) में 81 आ जायेगा. इसी तरह अगले for loop में हम arr के उन सभी मानो को print कर रहे हैं.
अधिकांशतः हम किसी array के प्रत्येक मान को access करने के लिए ऊपर दिखाए अनुसार for loop का प्रयोग करते हैं.
अगले लेख में हम while loop के बारे में जानेंगे.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| #include <stdio.h> int main() { printf ( "Please enter a number: " ); int i = 0; scanf ( "%d" , &i); printf ( "You entered %d \n" , i); if (i%2 == 0) { printf ( "Number is even\n" ); } else { printf ( "Number is odd\n" ); } scanf ( "%d" , &i); } |
इस program को run करे. यह screen पर print करेगा Please enter a number: और रुक जायेगा. कोई भी संख्या type करके enter दबा दें. इसके बाद यह print करेगा कि आपने कौन सी संख्या type कि थी और यह भी बताएगा कि यह सम(even) है या विषम(odd). अब देखते हैं यह काम कैसे करता है.
इस program में सबसे पहले हमने printf("Please enter a number: "); लिखा है जिससे आप परिचित ही हैं कि यह screen पर क्या print करेगा. इसके बाद हमने variable i define किया है जो उस मान को ग्रहण करेगा जो हम input लेंगे. इसके बाद वाली line को ध्यान से देखिये जिसमे लिखा है scanf("%d", &i);
scanf printf की तरह ही काम करता है. इसका पहला argument "%d" का ठीक वही मतलब है जो printf में होता था, इसके द्वारा हम यह बताते हैं input में int लेंगे. दूसरा argument &i यह बताता है कि जो input लेंगे वह किस variable में store होगा. (यहाँ variable से पहले & चिन्ह लगाना आवश्यक होता है इसका कारण आगे समझेंगे जब pointer के बारे में पढेंगे.) अगर आप screen में 25 enter करेंगे तो i का मान 25 हो जायेगा. उसके बाद वाला program पिछले लेखो के अनुसार आप आसानी से समझ सकते हैं - हमने screen पर उस संख्या को print किया है जो आपने enter किया था. यहाँ यह ध्यान रहे % भाग देने से बचने वाला शेष दे देता है. अतः उस संख्या 2 में का भाग देने पर यही शेष 0 आता है तो हमने print किया है कि Number is even अन्यथा यह print किया है कि Number is odd.
हर program के अंत में scanf लिखने का कारण: अगर आप windows में program run कर रहे है तो एक काली window खुलती है जिसमे output दिखता है परन्तु जैसे ही program समाप्त होता है यह काली window बंद हो जाती है. अंत में scanf लिखने से काली window बंद नहीं होती क्योकि वो हमारे input का wait करती है. अगर ये नहीं लिखेंगे तो program इतनी जल्दी run होकर काली window बंद हो जायेगी कि हम अपने program का output ही नहीं देख पाएंगे.
अब समझते हैं Array के बारे में.
हम variable के बारे में जान चुके हैं कि हर variable कोई value store कर सकता है परन्तु variable define करते समय यह बताना होता है कि वह किस type की value store करेगा integer, character etc. Array एक से अधिक value store कर सकता है. अगर आप 100 int store करना चाहते तो उसे एक array में कर सकते हैं. इसे एक example कि सहायता से समझते है कि एक से अधिक variable Array में कैसे store करते हैं.
नीचे दिए गए example में 0 से 9 तक संख्याओं के square array में store करेंगे और उन्हें print करेंगे. पहले इस program को run करके देखें.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| #include <stdio.h> int main() { int i = 0; int arr[10]; for (i = 0; i < 10; i++) { arr[i] = i*i; } for (i = 0; i < 10; i++) { printf ( "square of %d is %d\n" , i, arr[i]); } scanf ( "%d" , &i); } |
अब इसे समझते हैं. int arr[10]; arr variable define कर रहा है जो 10 int store कर सकता है. ध्यान रहे यह केवल int store कर सकता है. ये सारे int इसमें number से store रहते हैं. ध्यान रहे कि इनकी numbering 0 से start होती है जैसे कि इस 10 int की Array arr में पहला int arr[0] पर होगा, दूसरा arr[1] पर ... ऊपर हमने arr कि size 10 रखी है अतः यह 10 int(arr[0] से arr[9]) ही store कर सकता है. इसके बाद के program को आप समझ ही सकते हैं. for loop के अंदर (जो कि 10 बार run होगा) जब हम पहली बार आयेंगे तो i का मान 0 होगा अतः arr[0] (arr array का पहला int) में 0 आ जायेगा इसी तरह आगे बढते हुए जब for loop के अंदर अंतिम बार आयेंगे तो array arr का अंतिम int(arr[9]) में 81 आ जायेगा. इसी तरह अगले for loop में हम arr के उन सभी मानो को print कर रहे हैं.
अधिकांशतः हम किसी array के प्रत्येक मान को access करने के लिए ऊपर दिखाए अनुसार for loop का प्रयोग करते हैं.
अगले लेख में हम while loop के बारे में जानेंगे.
[11]-आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम while loop का उपयोग करना सीखेंगे. इसमें एक boolean statement दिया जाता है. जब तक उसकी value true आती है तब तक loop के अंदर लिखे statement run होते रहते हैं. जब तक नीचे दिए गए example से समझते हैं. while loop का उपयोग करके एक बार फिर से 1 से 10 तक कि संख्याओ के square print करेंगे
ऊपर दिए गए program में i की प्रारंभिक value 1 है. उसके बाद while loop का boolean statement है i<=10 जो कि true है क्योंकि i की value 1 है, इसलिए loop के अंदर लिखे सारे statement execute हो जायेंगे. ध्यान दें कि हम loop के अंदर i की value 1 बढ़ा रहे हैं. फिर से boolean statement true हो जायेगा क्योंकि i की value 2 हो गयी है. इसी तरह आगे बढते रहेंगे. जब i की value 11 हो जायेगी तब boolean statement false हो जाएगा और हम while loop से बाहर आ जायेंगे. इस program को चला कर देखें. यह 1 से 10 तक सभी संख्याओ के square print करेगा.
अगले लेख में हम string का उपयोग करना सीखेंगे और साथ ही उसका use करके कुछ interesting example देखेंगे.
अगर आपको यह लेख पसंद आया हो तो अपने दोस्तों को भी बताएं क्योंकि ये उनके लिए भी उपयोगी सिद्ध हो सकता है !! नीचे दिए गए link के माध्यम से इसे आसानी से facebook twitter और Google Buzz पर भी Share कर सकते हैं.
#include <stdio.h>
int main() {
int i=1;
int sq;
while(i<=10) {
sq = i*i;
printf("square of %d is %d.\n", i, sq);
i = i+1;
}
scanf("%d", &i);
return 1;
}
ऊपर दिए गए program में i की प्रारंभिक value 1 है. उसके बाद while loop का boolean statement है i<=10 जो कि true है क्योंकि i की value 1 है, इसलिए loop के अंदर लिखे सारे statement execute हो जायेंगे. ध्यान दें कि हम loop के अंदर i की value 1 बढ़ा रहे हैं. फिर से boolean statement true हो जायेगा क्योंकि i की value 2 हो गयी है. इसी तरह आगे बढते रहेंगे. जब i की value 11 हो जायेगी तब boolean statement false हो जाएगा और हम while loop से बाहर आ जायेंगे. इस program को चला कर देखें. यह 1 से 10 तक सभी संख्याओ के square print करेगा.
अगले लेख में हम string का उपयोग करना सीखेंगे और साथ ही उसका use करके कुछ interesting example देखेंगे.
अगर आपको यह लेख पसंद आया हो तो अपने दोस्तों को भी बताएं क्योंकि ये उनके लिए भी उपयोगी सिद्ध हो सकता है !! नीचे दिए गए link के माध्यम से इसे आसानी से facebook twitter और Google Buzz पर भी Share कर सकते हैं.
कार्यक्रम लेखकों के लिए सी भाषा नमूना कोड
ReplyDeleteग कार्यक्रम लिंक्ड सूची में एक तत्व खोजें