Advertisement
Lagx

Cuestionario de Programación #7 Módulo #3 - Funciones Recurs

Oct 12th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.22 KB | None | 0 0
  1. 1)
  2. char * aMayusculas(char *frase, int posInicial)
  3. {
  4.     if(frase[posInicial] == '\0')
  5.     {
  6.         return frase;
  7.     }
  8.     else
  9.     {
  10.         frase[posInicial]=toupper(frase[posInicial]);
  11.         return aMayusculas(frase,posInicial+1);
  12.     }
  13. }
  14.  
  15. char * sacaEspacios(char *frase)
  16. {
  17.     int largo,i,j=0;
  18.     largo = strlen(frase);
  19.     char cadena[largo];
  20.     for(i=0;i<largo;i++)
  21.     {
  22.         if(frase[i] != ' ')
  23.         {
  24.             cadena[j] = frase[i];
  25.             j++;
  26.         }
  27.     }
  28.     cadena[j]='\0';
  29.     strcpy(frase,cadena);
  30.     return frase;
  31. }
  32.  
  33. int esPalindroma (const char *frase, int posInicial, int posFinal)
  34. {
  35.     if(posInicial==posFinal)
  36.     {
  37.         return 1;
  38.     }
  39.     else
  40.     {
  41.         if(frase[posInicial] == frase[posFinal])
  42.         {
  43.             return esPalindroma(frase,posInicial+1,posFinal-1);
  44.         }
  45.         else
  46.         {
  47.             return 0;
  48.         }
  49.     }
  50. }
  51. 2)
  52. int mayorValor ( int *vector, int mayor, int posFinal)
  53. {
  54.     if(posFinal==-1)
  55.     {
  56.             return mayor;
  57.     }
  58.     else
  59.     {
  60.         if(vector[posFinal] > mayor)
  61.         {
  62.             return mayorValor(vector,vector[posFinal],posFinal);
  63.         }
  64.         else
  65.         {
  66.             return mayorValor(vector,mayor,posFinal-1);
  67.         }
  68.     }
  69. }
  70. 3)
  71. int mult_rusa(int multiplicador, int multiplicando)
  72. {
  73.     printf("Multiplicador: %d, Multiplicando: %d\n",multiplicador,multiplicando);
  74.     if(multiplicador==1)
  75.     {
  76.         return multiplicando;
  77.     }
  78.     if(multiplicador % 2 == 0)
  79.     {
  80.         return (mult_rusa(multiplicador/2,multiplicando*2));
  81.     }
  82.     else
  83.     {
  84.         return (multiplicando + mult_rusa(multiplicador/2,multiplicando*2));
  85.     }
  86. }
  87. 4)
  88. int Conjunto_Ordenado(int ** Matriz , int tamano, int Fila, int Columna, int Valido)
  89. {
  90.     if((Valido == 1)&&(Fila == 0)&&(Columna == tamano-1))
  91.     {
  92.         return 1;
  93.     }
  94.     if(Fila == 0)
  95.     {
  96.         return Conjunto_Ordenado(Matriz,tamano,tamano-1,Columna+1,1);
  97.     }
  98.     else
  99.     {
  100.         if(Matriz[Fila][Columna] >= Matriz[Fila-1][Columna])
  101.         {
  102.             return Conjunto_Ordenado(Matriz,tamano,Fila-1,Columna,1);
  103.         }
  104.         else
  105.         {
  106.             return 0;
  107.         }
  108.     }
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement