Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Recursividad contar palabra mas larga y hubicacion de la misma

Estas en el tema de Recursividad contar palabra mas larga y hubicacion de la misma en el foro de C/C++ en Foros del Web. Hola gente, resulta que tengo un problema grande, tengo que hacer lo siguiente: Dada una oración, indicar la posicion (desplazamiento desde el comienzo) donde esta ...
  #1 (permalink)  
Antiguo 03/04/2011, 21:33
 
Fecha de Ingreso: abril-2011
Ubicación: Cordoba
Mensajes: 3
Antigüedad: 13 años
Puntos: 0
Exclamación Recursividad contar palabra mas larga y hubicacion de la misma

Hola gente, resulta que tengo un problema grande, tengo que hacer lo siguiente:
Dada una oración, indicar la posicion (desplazamiento desde el comienzo) donde esta la palabra mas larga. Si hay 2 o mas, debera indicar la primera ocurrencia. Las palabras están separadas por blancos.
Deberá definir una función recursiva a la cola que resuelva el problema en una unica pasada por los datos.

Lo que llevo hasta ahora es lo que se me ocurrio, pero la verdad que no me funciona, y ya no se que hacer. Espero que sepan como ayudarme.

en este intento del programa, intento hacer de que mientras sea distinto de blanco, me cuente las palabras. Necesito comparalas, pero no tengo muy claro como.

Sin mas, un saludo, atte.
Pablo Morales!

Código c++:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int largo ( char* cadena,int i,int pos,int conPal)
  5.     {     int largoPal;
  6.           if (cadena[i]=='\0')
  7.              {
  8.                               return i;
  9.              }          
  10.           else
  11.                
  12.                {
  13.                          if (cadena[i] != ' ')
  14.                
  15.                             {
  16.                              return largo ( cadena,i+1,pos+1,conPal+1);
  17.                              }      
  18.                             else
  19.                              {   if (conPal>largoPal)
  20.                                       {
  21.                                         largoPal=conPal;
  22.                                       }                        
  23.                                   else {};
  24.                              }
  25.                }
  26. }                                  
  27.                                  
  28. int main()
  29.  
  30. {
  31.      char cadena[] = "belenzuela lalalalal";
  32.  
  33.      printf("%s\n", largo(cadena, 0,0,0));
  34.  
  35.      system("pause");
  36.      return 0;
  37. }
  #2 (permalink)  
Antiguo 04/04/2011, 09:29
 
Fecha de Ingreso: junio-2005
Mensajes: 93
Antigüedad: 18 años, 10 meses
Puntos: 9
Respuesta: Recursividad contar palabra mas larga y hubicacion de la misma

es necesario que utilices recursividad?, si no puedes utilizar la funcion strtok

http://www.cplusplus.com/reference/c...string/strtok/
  #3 (permalink)  
Antiguo 04/04/2011, 10:03
 
Fecha de Ingreso: abril-2011
Ubicación: Cordoba
Mensajes: 3
Antigüedad: 13 años
Puntos: 0
Respuesta: Recursividad contar palabra mas larga y hubicacion de la misma

Cita:
Iniciado por dragg04 Ver Mensaje
es necesario que utilices recursividad?, si no puedes utilizar la funcion strtok

[url]http://www.cplusplus.com/reference/clibrary/cstring/strtok/[/url]
Si, la consigna es usar recursividad, todabia nose como plantearlo

Etiquetas: caracacteres, larga, palabra, recursividad, cadenas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:30.