eval_expr=zeros(1,7); % A continuación se incluyen los casos de prueba usados para evaluar la tarea % Las pruebas sobre cada función son independientes % Si un caso falla no se ejecuta el resto de los casos para la función en cuestión % Para verificar los casos se debe ejecutar este script usando Octave en el directorio donde están los 3 archivos de la tarea % El resultado esperado es un vector de 7 unos. Cada cero indica un test que falló. % test de esSeparador: verificar que esSeparador funciona correctamente % si este test falla se resta 1 punto eval_expr(1) = esSeparador('a','; !+')==0 && esSeparador('!','; !+')==1; % un segundo test verifica si esSeparador para al encontrar que un caracter es un separardor % si este test falla se restan 0,25 puntos % tres tests para separar palabras, aquí se sustituye la versión entregada de esSeparador por la solución. % el primer test es el caso más sencillo, cuando el texto termina en un separador. Si falla resta 1 punto. [pos,largo]=separarPalabras('Otro texto, con separadores y palabras, que termina en separadores...?',', .?'); eval_expr(2)=(any(pos-[1 6 13 17 29 31 41 45 53 56])==0 && ... any(largo-[4 5 3 11 1 8 3 7 2 11])==0); % Si no se contempla el caso en que el texto termina en palabra se restan 0,5 puntos [pos,largo]=separarPalabras('Otro texto, con separadores y palabras, que termina en palabra',', .?'); eval_expr(3)=(any(pos-[1 6 13 17 29 31 41 45 53 56])==0 && ... any(largo-[4 5 3 11 1 8 3 7 2 7])==0); % Si no se contempla el caso en que el texto comienza en separadores se restan 0,25 puntos [pos,largo]=separarPalabras(' !!!Otro texto, con separadores y palabras, que empieza y termina en separadores...?',', .!?'); eval_expr(4)=~(any(pos-[6,11,18,22,34,36,46,50,58,60,68,71]) || any(largo-[4,5,3,11,1,8,3,7,1,7,2,11])); % tres tests para palabraMasLarga, aquí se sustituye la versión entregada de separarPalabras por la solución. % el primer test es el caso más general, cuando la palabra más larga está en el medio de la frase. Si falla resta 1 punto. texto='un velocirraptor me mordio'; [pos,largo]=separarPalabras(texto,' '); palabra=palabraMasLarga(pos,largo,texto); eval_expr(5)=strcmp(palabra,'velocirraptor'); % si no se contempla el caso en que la palabra está al final se resta 0,5 texto='me mordio un velocirraptor'; [pos,largo]=separarPalabras(texto,' '); palabra=palabraMasLarga(pos,largo,texto); eval_expr(6)=strcmp(palabra,'velocirraptor'); % si no se contempla el caso en que la palabra está al comienzo se resta 0,5 texto='velocirraptor me mordio un'; [pos,largo]=separarPalabras(texto,' '); palabra=palabraMasLarga(pos,largo,texto); eval_expr(7)=strcmp(palabra,'velocirraptor'); eval_expr