Ver Mensaje Individual
  #63 (permalink)  
Antiguo 02/12/2014, 04:36
amchacon
 
Fecha de Ingreso: julio-2012
Mensajes: 375
Antigüedad: 11 años, 9 meses
Puntos: 28
Respuesta: Petando la pila. Problemas y retos usando recursividad.

Cita:
Iniciado por leosansan Ver Mensaje
Tan solo he usado el operador condicional, creo que los usuarios deberían usarlo más para evitar tanto ef-else y sus llaves correspondientes. Pero observa que no he usado operadores a nivel de bit y/o desplazamientos, cosa que también podría haber usado como en su momento hizo kutcher. Pero eso me parece que se sale de los conocimientos generales. Pero un condicional......
Sí, pero es un operador ternario anidado, se ve muy raro y proclibe a errores.

Lo puedes dejar en un punto intermedio:
Código C++:
Ver original
  1. int unsigned comb ( unsigned n , unsigned k )
  2. {
  3.     if (k > n/2) return comb ( n , k );
  4.     else
  5.       return ( k >= 1 ) ?  ( n  * comb (  n - 1 , k - 1 ) / k ) : 1 ;
  6. }

Aunque tanto parentesis me sigue liando:

Código C++:
Ver original
  1. int unsigned comb ( unsigned n , unsigned k )
  2. {
  3.     if (k > n/2) return comb ( n , k );
  4.     if (k >= 1)  return n  * comb (  n - 1 , k - 1 ) / k;
  5.     return 1;
  6. }

Me gusta más así, se puede ver caso por caso en cada linea.