Header Ads

ad728
  • New Updates

    Function with Arrays


    Function with Arrays

    जिस प्रकार एक Function में किसी साधारण Variable का मान Argument के तौर पर Pass करते हैं , उसी तरह से एक Array को भी किसी Function में Argument के रूप में Pass कर सकते हैं | Argument के रूप में Array का नाम व Array की Size Actual Argument के रूप में User Defined Function को Pass की जाती है | जब हमें किसी User Defined Function में Array का मान प्राप्त करके उस पर प्रक्रिया करनी होती है , तब हम User Defined Function में Array का नाम व Array की Size Receive करते हैं | इसलिए User Defined Function को निम्न Format में Define करना होता है |

    
    Return_Data_TypeFunction_Name(Array[ ],Size);
    Data_Type_Array[ ] , Size;
    { 
         Statement Block;
         return (Expression);
    }
    

    इस प्रारूप के अनुसार हम एक User Defined Function लिखते हैं , जिसमें Array[ ] में प्राप्त हुए सभी मानों में से सबसे बड़ा मान Calling Function को return करना है | Function निम्नानुसार है |

    
    float largest(float Array[],int size)
    //float Array[];
    //int size;
    {
    	int j;
    	float max;
    	
    	max = Array[0];
    	
    	for(j=1; j

    अब एक प्रोग्राम द्वारा इस Function को Use करते हैं | हम एक प्रोग्राम लिखते हैं , जिसमें किसी Array में 10 मान Input करते हैं और उन 10 मानों में से सबसे बड़े मान को Output में Print करवाना है | सबसे बड़ा मान ज्ञात करने के लिए इस Function को use किया गया है |

    Program

    
    #include<stdio.h>
    main()
    {
    	float value[10], large;
    	int j;
    	
    	for(j=0; j<10; j++)
    	{
    		printf("\n Enter %d Value ",j+1);
    		scanf("%f ",&value[j]);
    	}
    	large = largest (value,10);
    	printf("\n Largest Value is%f ",large);
    	getch();
    }
    
    //userDefinedFunction
    
    float largest(float Array[],int size)
    {
    	int j;
    	float max;
    	max = Array[0]
    	for(j=0; j<size; j++)
    	  if(max<Array [j])
    	  max = Array [j];
    	  
    	  return(max);
    }
    
    

    इस प्रोग्राम में main() Function में Value नाम के Array में दस मान Input किये जाते हैं | फिर Largest Function को Call किया जाता है | यहां Largest Function में Value नाम के Array में Input किये गए सभी Elements , Largest Function के Array नाम के Variable में चले जाते हैं और  Array की Size 10 Largest Function के Size नाम के Variable में चली जाती है | यानी Array = Value Size = Size  हो जाता है |

    Program Control जब User Defined Function में आता है , तब Array में Value के सभी Element आ जाते हैं व Array की Size 10 हो जाती है , जो कि main() Function से प्राप्त हुई है | अब इस User Defined Function में दसों Elements में से Largest मान Calculate होता है , और वह मान max नाम के  Variable में आ जाता है |

    Max नाम के Variable के नाम को पुनः main() Function को Return किया जाता है , जिससे main() Function में max का मान Large नाम के Variable को प्राप्त हो जाता है | फिर Large नाम के Variable के मान को  Output में Print करवा दिया जाता है , जो कि दसों Elements में से सबसे बड़ा मान होता है |

    जब main() Function के Actual Arguments , User Defined Function  के Variables को Formal Arguments के रूप में प्राप्त हुए Argument  को Define करना जरुरी होता है , कि कौनसा Variable क्या है |

    यानी जब Value नाम के Array Variable से सभी Element , User Defined Function के Array नाम के Variable को प्राप्त होते हैं,  तब User Defined Function में ये Define करना जरुरी होता है , कि यहां Array नाम के Variable में किसी Array से Elements प्राप्त हुए हैं | इसलिए Array को भी हमें Array प्रकार का ही घोषित करना होता है | Array नाम के  इस Variable , जो कि User Defined Function में Arguments लेने के लिए लिखा गया है , निम्न प्रकार से Declare किया जाता है |

    
    floatArray[ ];
    

    जब Program Control इस User Defined Function में प्रवेश करता है , तो उसे पता चल जाता है , कि Array के Variable में जो मान  Calling Function से प्राप्त हुआ है , वह Array प्रकार का मान है |

    यानी main() Function से Value नाम के Array में Store किये गए सभी मान , इस User Defined Function के Array नाम के Variable में Copy हो गए हैं , और Array नाम का ये Variable main() Function में Declare Value नाम के Array Variable के Elements को Store किये हुए हैं |

    इस Declaration में Array के Bracket को Empty रखा जाता जरुरी होता है , क्योंकि Array कि Size एक अन्य Size नाम के Variable में प्राप्त होती और ये Size भी  Argument के रूप में Calling Function से प्राप्त होती है | इस Size के Data Type को भी Define करना जरुरी होता है | Array की Size हमेंशा int प्रकार के Data Type के रूप में Declare किया जाता है |

       

     


     

    No comments

    Post Top Ad

    ad728

    Post Bottom Ad

    ad728