[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Palavras que iniciam com maiuscula



Camila wrote:
> 
> Na hora que eu for comparar as palavras do texto com as do dicionario como
> devo fazer com palavras que comecam com maiuscula como nomes proprios e
> palavras que iniciam as frases? Devo compara-las da forma que estao
> escritas ou converte-las para minuscula antes de comparar?
> 
> 
>  Camila Correa Moraes   <cacm@linux.ime.usp.br>

Oi, Camila!!
Bem, acho que uma solução para este problema seria a utilizada pelo
Knuth no Wordtest. Ele cria um vetor ord de 256 posições  em que cada
uma delas representaria um caracter da tabela ASCII. Depois, ele faz com
que as "casas" correspondentes aos caracteres ´A´e ´a´, por exemplo,
tenham o mesmo valor:

  for (c=1; c<=26; c++) ord [´a´-1+c] = ´A´-1+c;

  Desa maneira, ord [´a´] = ord [´A´], ord [´b´] = ord [´B´], etc...

  Na hora de comparar as palavras usaríamos o valor contido en ord[], e
não o valor ASCII do caracter. Nesse caso, não seria eficiente utilizar
o strcpy() para comparar as palavras.
  Eu estou utilizando a idéias do Knuth e, por enquanto, está dando
certo...
  Espero que isso a ajude. :-)

Lemos