elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Programacion con Funcion Recursiva Ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Programacion con Funcion Recursiva Ayuda  (Leído 1,805 veces)
DRinoa

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Programacion con Funcion Recursiva Ayuda
« en: 11 Octubre 2015, 02:16 am »

Buenas tardes,estoy aprendiendo a programar en c,así que mi nivel es muy basico,me piden hacer está recurrencia con una funcion cursiva pero no me sale:

An+1=3An
A1= 1
para n<=10

ésto es lo que he estado haciendo pero se que no está bien,me pueden ayudar por favor

int factorial (int n) {
   
   while (n!=1){
      return n*factorial(n+3);
      
   }
   return 1;
   
   
   }

Gracias :) Por favor me podrpian explicar para aprender, mucha sgracias!!

p.d. Uso Dev c++


En línea

Seyro97

Desconectado Desconectado

Mensajes: 145


Ver Perfil WWW
Re: Programacion con Funcion Recursiva Ayuda
« Respuesta #1 en: 11 Octubre 2015, 11:17 am »

El factorial multiplica el número del factorial, por el anterior, y por el anterior hasta llegar a uno... Entonces, ¿por qué multiplicas el número por los tres siguientes: n*factorial(n+3)?Es decir, tendrías que escribir n*factorial(n-1), para multiplicar por el anterior


En línea

Carlos Peláez González. visita http://www.taringa.net/EnjoyC para muchos tutoriales!
user-marcos

Desconectado Desconectado

Mensajes: 159


Ver Perfil
Re: Programacion con Funcion Recursiva Ayuda
« Respuesta #2 en: 11 Octubre 2015, 12:53 pm »

Recursividad es una función que se llama así misma y tiene que tener una condición de parada, un buen ejemplo para entenderlo es calcular el factorial de un número, te pongo un ejemplo:
Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int factorial(int n)
  5. {
  6.  if(n != 1 and n > 1)
  7.   return n  * factorial(n-1);
  8.   else return n;
  9. }
  10.  
  11. int main()
  12. {
  13.  cout << factorial(5);
  14. }
  15.  

Este tipo de recursión se llama tail recursion,  es "más eficiente"
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con función recursiva.
Programación C/C++
Javi.24 1 2,513 Último mensaje 16 Junio 2012, 05:41 am
por GuzmanG
AYUDA Función Recursiva
Programación C/C++
dvigon 6 3,341 Último mensaje 20 Diciembre 2013, 02:13 am
por dvigon
Ayuda Programación Recursiva
Java
XKC 1 1,536 Último mensaje 7 Enero 2016, 02:19 am
por jsDotx3
ayuda con este programa con funcion recursiva
Programación C/C++
mikany 3 2,172 Último mensaje 7 Febrero 2017, 11:18 am
por do-while
ayuda.funcion recursiva
Java
jkaszr 1 1,580 Último mensaje 21 Abril 2017, 01:08 am
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines