Search

for loop

आज Hindi के इस C/C++ programming language tutorial को आगे बढ़ाते हुए हम for loop के बारे में और जानेंगे. for loop से पहले हमएक और operator के बारे में बात करते हैं.%: किसी संख्या को दूसरी से भाग देने पर बचने वालाशेष हम इसके द्वारा जान सकते हैं. कुछ 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 करेंगे.?12345678910111213#include <stdio.h>intmain() {inti;intsq;for(i=1; i<=10; i = i+1) {sq = i*i;printf("square of %d is %d.\n", i, sq);}scanf("%s");return1;}सबसे पहले 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 करेगा कि वह सम हैया विषम.?1234567891011121314151617#include <stdio.h>intmain() {inti;intsq;for(i=1; i<=10; i = i+1) {switch(i%2) {case0:printf("%d is even.\n", i);break;case1:printf("%d is odd.\n", i);break;}}scanf("%s");return1;}ऊपर दिए गए 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") क्यों लिखते हैं.

Share this

Related Posts

Previous
Next Post »

Thnx