JOIN us on
WhatsApp Group Join Now
Telegram Join Join Now

हिंदी माध्यम नोट्स

Categories: C Language in hindi

User Define Function : Recursion or Multi file Programme in hindi in c language रिकर्शन इन हिंदी

रिकर्शन इन हिंदी User Define Function : Recursion or Multi file Programme in hindi in c language :-

Recursion : जब कोई function किसी दुसरे function को call कर सकता  है |लेकिन जब कोई function खुद को बार बार call करता है tab इस प्रोसेस को recursion कहते है |Recusion प्रोसेस पर ही recusion algorithm बनी है |

इस recusion algorithm से हम कई प्रॉब्लम (Honio Tower , tree traveler ,depth first search in graph ) solve हो सकती है |
Base condition:
किसी recursion function मे base condition वो condition होती है जिसके false होने तक recursion प्रोसेस चलती रहती है |
उदाहरण के लिए:
fact(int n)
{
int fact;
if(n==1)                   // Base condition//
{
return(1);
}
else
{
fact=n*fact(n-1);
return(fact);
}
इस function मे जब तक n की 1 नहीं होती है जब तक fact() की calling होती है |हर बार passing argument n-1 होता है |
Recursion types :
Recursion दो प्रकार का होता है |
1.Direct recursion
इसमें function() , direct ही खुद को call करता है |जैसे की factorial function मे|इस उदाहरण मे ,fact() जबतक की value n की value 1 नहीं होती जब तक खुद को fact() को call करता है |
#include <stdio.h>
#include<conio.h>
int fact(int);
void main()
{
number 1() ;
number 2();
getch();
}
number( )
{
int fact;
if(n==1)                   // Base condition//
{
return(1);
}
else
{
fact=n*fact(n-1);
return(fact);
}
आउटपुट होगा :
2.Indirect  recursion
इस प्रकार मे जब कोई function ,function 1() पहले कोई दूसरा function function2() को call करता है,function2() फिर function 1()  को call करता है tab इस function को Indirect  recursion कहते है |इसका उदाहरण है  :-
#include <stdio.h>
#include<conio.h>
void num 1(int);
void num 2(int);
int i;
void main()
{
printf(“Enter data”);
scanf(“%d”,&i);
num 1( );
}
void num 1( )
{
int  n=0;
if(n<=i)
printf(“%d”,n);
n++;
num 2( n );
}
else
{
return ();
}
}
void num 2( int m )
{
if(m<=i)
{
printf(“%d”,m);
m++;
num 1();
}
else
{
Return();
}
}
आउटपुट होगा :
Enter data 10
0 1 2 3 4 5 6 7 8 9 10
जब किसी recusion मे function के execution के आधार पर दो भागो मे डिवाइड किया गया है :-

1.Tail Recusion
कोई recursion ,tail recursion होता है जब इसमें recursion statement, function के last मे execute होता है |TAIL recursion ,Non tail recursion से better होती है|इस प्रकार से  complier को प्रोग्रम को समजने मे आसानी होती है क्योकि recursion statement के बाद कोई और statement execute के लिए नहीं होता है |
वतर्मान मे complier tail call elimination को use करता है recursion प्रोग्राम को पढने के लिए|
उदाहरण के लिए :
#include<conio.h>
#include<stdio.h>
void print( char );
int i=0;
void main()
{
printf(“Enter charcter”);
scanf(“%c”,&c);
print( c );
}
void print( char a)
{
if(i==20)
{
return ();
}
else
{
printf(“%c”,a);
i++;
print(a);
}
}
Non tail Recursion :
जब किसी Recursion मे ,Recursion statement last नहीं होता है तब इसे Non tail Recursion कहते है |
Passing a string to function :
string character का समूह होता है| किसी string को function के arguments मे pass करने का syntax array as argument के syntax की तरह होता है |
इसका syntax है :-
function calling मे, केवल string के नाम से call किया  जाता है |
syntax : function name (string _name) ;
function definition मे , string_name से define किया जाता है |
syntax : function type function_name (char string_name[ ]);
Function header का syntax one dimension array की तरह होता है |उदाहरण के लिए :
#include<stdio.h>
#include<conio.h>
void print( char);
void main()
{
char a;
printf(“Enter your charter “);
scanf(“%c”,&a);
print(a);
getch();
}
void print( char b)
{
int i=0;
for(i=0;i<=20;i++)
{
printf(“%c”,b);
}

आउटपुट होगा :
Enter your charter #
####################


Calling Function :
किसी भी function को main() function मे call करने के दो तरीके होते है :-
1.call by value
इस प्रकार मे , arguments मे किसी variable के data value को calling function मे pass किया जाता है |user define function मे variable की value मे हुई changes का effect main() function के actual variable पर नहीं पड़ता है |
2.Call by reference
इसमें actual parameter के address formal parameter मे pass होती है |user define function मे हुई changes  का effect actual parameter मे होता है |

Sbistudy

Recent Posts

सती रासो किसकी रचना है , sati raso ke rachnakar kaun hai in hindi , सती रासो के लेखक कौन है

सती रासो के लेखक कौन है सती रासो किसकी रचना है , sati raso ke…

18 hours ago

मारवाड़ रा परगना री विगत किसकी रचना है , marwar ra pargana ri vigat ke lekhak kaun the

marwar ra pargana ri vigat ke lekhak kaun the मारवाड़ रा परगना री विगत किसकी…

18 hours ago

राजस्थान के इतिहास के पुरातात्विक स्रोतों की विवेचना कीजिए sources of rajasthan history in hindi

sources of rajasthan history in hindi राजस्थान के इतिहास के पुरातात्विक स्रोतों की विवेचना कीजिए…

2 days ago

गुर्जरात्रा प्रदेश राजस्थान कौनसा है , किसे कहते है ? gurjaratra pradesh in rajasthan in hindi

gurjaratra pradesh in rajasthan in hindi गुर्जरात्रा प्रदेश राजस्थान कौनसा है , किसे कहते है…

2 days ago

Weston Standard Cell in hindi वेस्टन मानक सेल क्या है इससे सेल विभव (वि.वा.बल) का मापन

वेस्टन मानक सेल क्या है इससे सेल विभव (वि.वा.बल) का मापन Weston Standard Cell in…

3 months ago

polity notes pdf in hindi for upsc prelims and mains exam , SSC , RAS political science hindi medium handwritten

get all types and chapters polity notes pdf in hindi for upsc , SSC ,…

3 months ago
All Rights ReservedView Non-AMP Version
X

Headline

You can control the ways in which we improve and personalize your experience. Please choose whether you wish to allow the following:

Privacy Settings
JOIN us on
WhatsApp Group Join Now
Telegram Join Join Now