2. concepto Se dice que una función es recursiva cuando se define en función de si misma. No todas la funciones pueden llamarse a si mismas, sino que deben estar diseñadas especialmente para que sean recursivas, de otro modo podrían conducir a bucles infinitos. Es la forma de llamar a una función dentro de la misma.
3. Recursiva y no recursiva “Una no recursiva”, a pesar de parecer más sencilla y más frecuente, no puede dar solución a todos los problemas. “Una recursiva”, da un programa más sencillo y más elegante. Además, hay muchos problemas cuya respuesta se plantea solamente de forma recursiva.
4. Ejemplo: #include<iostream.h>#include<conio.h>#include<math.h>//FUNCION VALIDAR NUMERO ENTERO POSITIVOintvalidarnumero (){int n;do{cout<<"Ingres numero entero :"; cin>>n;if (n<=0) cout<<"El numero debe ser entero mayor que cero "<<endl;}while(n<=0);return n;}//FUNCION RECURSIVA PARA CALCULAR LA SUMATORIA 1^2 + 2^2 + 3^2 + ... + N^2floatsumacuadrados (int n){float s=0;if(n==1) s=1; //CASO BASEelse s=pow(n,2)+sumacuadrados(n-1); // CASO GENERALreturn s;}
5. //FUNCION PRINCIPALvoidmain (){int n;clrscr();n=validarnumero();cout<<endl<<"La sumatoria de 1^2 + 2^2 + 3^2 + ... + N^2 cuando n es igual a "<<n<< " es :"<<endl<<endl<<"S="<<sumacuadrados(n);getch();}