Discussion:
abreviar nombres
(demasiado antiguo para responder)
Mare
2005-10-24 02:22:15 UTC
Permalink
Tengo um vector de caracteres A, ejemplos:

Juan de la Rosa
Jose Manuel de la Quintana
Juan Gonzales
Ana Maria de las Cruzes Cano

A imagen del mismo vector A en la salida:

Juan de la Rosa
Jose M. de la Quintana
Juan Gonzales
Ana M. de las C. Cano

O sea, tengo que elaborar um programa que abrevie sólo los nombres del
medio. En el caso de ser solo dos, estos no deben ser abreviados. Una
restricción es que la salida debe ser el mismo vector. No puedo usar
otro como copia.
Alguna luz de cómo hacerlo?
McLeod / IdeaFix
2005-10-24 02:40:27 UTC
Permalink
Post by Mare
Alguna luz de cómo hacerlo?
Ignora lo de "de las" o "de la" o "del" en los nombres. Entonces te
quedarán 2,3, o 4 palabras que corresponden a:
2 palabras: un nombre simple y un apellido simple -> no se toca
3 palabras: un nombre compuesto y un apellido simple -> la segunda
palabra se transforma en inicial.
4 palabras: un nombre compuesto y un apellido compuesto -> la segunda y
cuarta palabras se transforman en inicial.

Funciones útiles: strlen, strcmp, stricmp, strcpy, strtok (quizás), y en
general, cualquier función de cadena.

Lo de que el vector de salida sea el mismo no es mayor problema:
realizas la conversión en una cadena temporal, y la recopias en el
vector una vez la tengas hecha del todo, esto para cada elemento de ese
vector de cadenas.

Loading...