Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[Delphi] Contar palavras num texto


Ryokusei
 Compartilhar

Posts Recomendados

Neste artigo irei ensinar como calcular o número de palavras de uma string.

Para definir uma palavra usaremos a seguinte definição: "Palavra é todo conjunto de caracteres delimitados por um espaço (caractere 32)".

 

Iremos utilizar um código em assembly e não utilizaremos funções do Delphi. Por que?

Porque assim o código fica mais limpo, bonito e rápido. Se fosse utilizar as funções Pos, Length, Copy, Delete ou qualquer outra o código de máquina ficaria enorme a execução do mesmo ficaria mais lenta se comparada ao assembly puro.

 

1 - Inicie um novo projeto no Delphi. Adicione os seguintes componentes com as propriedades:

 

É necessário se cadastrar para acessar o conteúdo.

 

É necessário se cadastrar para acessar o conteúdo.

 

2 - Dê dois cliques no botão para ir ao evento OnClick dele.

 

É necessário se cadastrar para acessar o conteúdo.

 

3 - Insira o algorítmo abaixo:

 

É necessário se cadastrar para acessar o conteúdo.

 

É necessário se cadastrar para acessar o conteúdo.

 

É necessário se cadastrar para acessar o conteúdo.

 

4 - Compile e seja feliz.

 

O algorítmo acima foi inteiramente escrito por mim, se você utilizar/copiar/citar dê créditos.

O algorítmo acima foi testado com diversas possibilidades de erro e funciona sem problemas. Ex:

string='p p p p p '; (5 palavras)

string=''; (0 palavras)

string=' '; (0 palavras)

string=' p ppppp p p pp ppp p ppp p '; (9 palavras)

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.