Ver Mensaje Individual
  #11 (permalink)  
Antiguo 18/11/2014, 06:08
Pantaláimon
 
Fecha de Ingreso: julio-2006
Ubicación: Barcelona
Mensajes: 244
Antigüedad: 18 años, 5 meses
Puntos: 32
Respuesta: Petando la pila. Problemas y retos usando recursividad.

En el primer post comenté que no había problema en usar tantas funciones como se quisieran. Incluso dejé un comentario en las plantillas para dejarlo claro:
Código Javascript:
Ver original
  1. /* más codigo si hace falta */


Así que tu código podría quedar así:
Código Javascript:
Ver original
  1. char* auxdiag(char* s, char* resultado, int i)
  2. {
  3.     if (*s)
  4.     {
  5.         int j = 0;
  6.         j = snprintf (resultado, i + 2, "%*c\n", i, *s);
  7.         diag (++s, resultado + j, ++i);
  8.     }
  9.     return resultado;
  10. }
  11.  
  12. char* diag(char* s, char* resultado) {
  13.     return auxdiag(cadena, resultado, 1);
  14. }
  15.  
  16. int main (void)
  17. {
  18.     char cadena [] = "abcde";
  19.     int n = strlen(cadena);
  20.  
  21.     char* resultado = (char*)calloc(n * n + 1, sizeof(char));
  22.     resultado = diag(cadena, resultado);
  23.     puts(resultado);
  24.  
  25.     free(resultado);
  26.     return 0;
  27. }

¿leosan, vangodp, al final no os animáis?

Creo que la idea será ir poniendo dos problemas por semana. Así que el viernes doy las soluciones que tenía yo para estos problemas y propongo dos más.

Un saludo!
__________________
github.com/xgbuils | npm/xgbuils