loops

Loops
अगर आप से कहा जाए की CProgramminginhindi..in को आपको 100 बार Output कराना है तो आप इसके लिए 100 बार printf() लिखगे । इससे आपका बहुत समय खराब होगा एवं कम्प्यूटर की मेमोरी भी ज्यादा उपयोग होगी। इससे बचने के लिए C Langaue में Loops दिये हुए है जिनका उपयोग करके हम एक ही Statement को कई बार Execute करा सकते है। 

C Language में तीन तरह के Loops  है इन्हे Iteration Statement भी कहते है।  Loops निर्देशो के समूह को repeatedly जब तक Executes करता है जबकि Termination Condition  नही मिलती है। 

  1. for loop
  2. while loop 
  3. do-while loop
for loop 

Syntax :
for


Note : यदि for loop में Single Statement है तो हम Curly Braces को छोड़ भी सकते है।

for एक keyword है। यहाँ Increment/ decrement की बजह Updation शब्द का उपयोग किया गया है क्योकि increment मतलब होता है किसी value मे 1 बढ़ाना औऱ decrement का का मतलब होता है किसी value मे 1 में एक घटाना । चूंकि loop में कभी क 2 या 3 का increment /decrement करते है इसलिए यहाँ updation का उपयोग किया गया है। हम Syntax में Updation की जगह Increment/ decrement शब्द का उपयोग भी कर सकते है। 



Initialization
Condition
Updation
i=1;
i=2;
i=j;
i=2+3;
i=j*j;          
i=i+j;
इत्यादि
i<=10;
i<10;
i>=10;
i>10;
i!=10;
i<=10 && j<=15;
इत्यादि
i++;
i=i+;
i--;
i=i+5;
i=i-5;
i=j+2
इत्यादि

अब एक प्रोग्राम के द्वारा समझते है। 

/* Program to print numbers from 1 to 10 */

             #include<stdio.h>
             #include<conio.h>

             int main(void)

             {   
               int i;   
               clrscr();   
               printf("Numbers from 1 to 10:\n");  
               for(i=1;i<=10;i++)
               {
                       printf("%d ",i);   
               }   
                   getch(); 
                   return 0;
             }
Output :
Number from 1 to 10 :
1 2 3 4 5 6 7 8 9 10

for loop की क्रियाविधि :


for loop working
जैसा  कि उपरोक्त प्रोग्राम में दिखाया गया है कि प्रोग्राम का कंट्रोल सबसे पहले Initialization मतलब i=1; पर आता है उसके बाद प्रोग्राम का कंट्रोल Condition (i<=10) test करता है यदि condition सही होती है तो loop के अंदर के Statement(s), Execute हो जाते है। इसके बाद प्रोग्राम का कंट्रोल Updation (i++) पर जाता है और i की value में 1 का Increment होता है और फिर से Condition, Test करता है । यदि condition सही होती है तो loop के अंदर के Statement(s), फिर से Execute हो जाते है। इसके बाद फिर से प्रोग्राम का कंट्रोल updation पर जाता है और i की Value में फिर से Increment होता है  और फिर से Condition, Test होती है। यह प्रोसेस तबतक चलता रहता है जबतक कि Condition False नही हो जाती है। जैसा कि उपरोक्त Diagram में आप देख रहे होगे।  


/* Program to print numbers  square from 1 to 10 */

             #include<stdio.h>
             #include<conio.h>

             int main(void)

             {   
               int i;   
               clrscr();   
               printf("Numbers square from 1 to 10:\n");  
               for(i=1;i<=10;i++)
               {
                       printf("%d ",i*i);   
               }   
                   getch(); 
                   return 0;
             }
Output :
Number square from 1 to 10 :
1 4 9 16 25 36 49 64 91 100


उपरोक्त printf("%d", i*i); इसका मतलब है कि पहले i से  i का गुणा होगा फिर वो Value प्रिन्ट होगी।

अपर आप से कहाँ जाये कि cprogramminginhindi को 10 बार प्रिन्ट कराये । 
/* Program to print cprogramminginhindi 10 times */

             #include<stdio.h>
             #include<conio.h>

             int main(void)

             {   
               int i;   
               clrscr();   
               for(i=1;i<=10;i++)
               {
                       printf("cprogramminginhindi\n");   
               }   
                   getch(); 
                   return 0;
             }
Output :
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi
cprogramminginhindi

उपरोक्त प्रोग्राम cprogramminginhindi के बाद \n लगाने से आउटपुट एक के बाद एक लाइन में आया यदि \n नही लगायगे तो आउटपुट एक ही लाइन में आ जायेगा


NEXT : for loop-II
PREVIOUS : goto statement

2 comments: