Bloque de funciones SIMILAR_TEXT

El bloque de funciones SIMILAR_TEXT calcula la similitud entre dos cadenas de caracteres.

El cálculo de la similitud entre dos cadenas de caracteres se realiza según el método descrito en Programming Classics: Implementing the World's Best Algorithms by Oliver (ISBN 0-131-00413-1). Tenga en cuenta que esta implementación no utiliza una pila como en el pseudocódigo de Oliver, pero sí llamadas recursivas que pueden mejorar el rendimiento (pero no tienen por qué). Tenga también en cuenta que la complejidad de este algoritmo es O(N³), donde N es la longitud de la cadena más larga.

Entrada STR1

La entrada define la primera cadena de caracteres que se va a comparar.

Entrada STR2

La entrada define la segunda cadena de caracteres que se va a comparar.

Salida SIM

La salida devuelve el número de caracteres coincidentes en ambas cadenas de caracteres.

El número de caracteres coincidentes se calcula buscando la subcadena común más larga y repitiendo esto recursivamente para los prefijos y sufijos. Las longitudes de todas las subcaracterísticas comunes encontradas se suman.

Salida PERCENT

La salida devuelve la similitud como un valor porcentual en coma flotante. Para ello, el resultado se divide por el promedio de las longitudes de las cadenas especificadas y se multiplica por 100.