Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: eduardo17445 en 1 Noviembre 2012, 21:38



Título: me gustaria q me revisaran esta funcion recursiva y m dijeran si esta bien
Publicado por: eduardo17445 en 1 Noviembre 2012, 21:38


.- Realice una función recursiva que calcule el cuadrado de un número N.


#include <iostream>
using namespace std;
int (funcion_recursiva_potencia2(int x,int n));
{
   int numero;
   if (n==0)
      return 1;
      
   else
return x*potencia2(x, n-1);

               
         for (i=1;i<n;i++)
            potencia=potencia*numero;
            if((x!=0)&&n>0))
            n=potencia(x,n)
            cout<<"potencia="<<n;
           return 0;
}


Título: Re: me gustaria q me revisaran esta funcion recursiva y m dijeran si esta bien
Publicado por: ecfisa en 1 Noviembre 2012, 22:22
Hola.

Una función recursiva se llama a si misma por su nombre y si la funcion es "funcion_recursiva_potencia2"[1], no se puede invocar como "potencia2"[2]:
Código
  1. int (funcion_recursiva_potencia2(int x,int n)); [1]
  2. {
  3.   int numero;
  4.   if (n==0)
  5.      return 1;
  6.   else
  7.     return x*potencia2(x, n-1); [2]
  8. }
  9.  
Es inncecesario encerrar entre paréntesis a la función, así también como la variable local "numero".

Entonces sería:
Código
  1. int potencia(int x,int n) {
  2.  if (n==0)
  3.    return 1;
  4.  else
  5.    return x * potencia(x, n-1);
  6. }
  7.  

Saludos.



Título: Re: me gustaria q me revisaran esta funcion recursiva y m dijeran si esta bien
Publicado por: ecfisa en 1 Noviembre 2012, 22:26
Error, mensaje duplicado.

Solicito por favor a algun moderador que tenga la amabilidad de borrarlo.

Saludos.


Título: Re: y esta funcion recursiva esta bien
Publicado por: eduardo17445 en 2 Noviembre 2012, 02:52

Realice una función recursiva que calcule el producto de un número N.

#include <iostream>
using namespace std;
int funcion_producto,(x,n);
{

           if (n==0)
         {
                return n;
           else
               return n*producto(n);
         }
         }


Título: Re: me gustaria q me revisaran esta funcion recursiva y m dijeran si esta bien
Publicado por: ecfisa en 2 Noviembre 2012, 04:25
Hola carrlos.

Por favor: nueva pregunta = nuevo hilo.

Gracias.


Título: Re: me gustaria q me revisaran esta funcion recursiva y m dijeran si esta bien
Publicado por: eduardo17445 en 2 Noviembre 2012, 05:16
--------------------------------------------------------------------------------
algo asi  return n+producto;
for(i=1;i<producto;i++)
{
producto=producto+n;
 cout<<"producto"<<producto;