Close

7 de junho de 2017

Encontrar palavras dentro de um Texto, usando COPIA com uma formula.

Vamos pegar um texto com cinco palavras separadas por um espaço chamado de TEXTO5, usando este pedaço de algoritmo, abaixo:

VAR
TEXTO5 : CARACTER
INICIO
TEXTO5 <- “CARNE PAPAI FILHO FRUTA PARIS ”
FIM

Ao observarmos este exemplo, vemos que a primeira é CARNE, e a segunda é PAPAI, a terceira FILHO, a quarta é FRUTA e por último a quinta é PARIS. Todas as palavras com o mesmo tamanho (5 letras), Num texto de caracteres com 30 letras.

Bom para saber ou pegar um subtexto qualquer posição dentro de uma variável do tipo CARACTER usamos a função COPIA( );

Sua sintaxe é variável <- (recebe) COPIA(texto, posição,quantidade)

Supondo que se queira pegar a terceira palavra temos saber em que posição dele.

Pois : “CARNE PAPAI FILHO FRUTA PARIS ”

C A R N E P A P A I F I L H O F R U T A P A R I S
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Cada letra das palavras dentro do texto (string ou caracter) ocupa uma posição e

Assim ficaria: PALAVRA <- COPIA(TEXTO5,13,5) ,   POR QUE? Como se pode ver, na posição 13 está a letra (caractér) “F” é aonde começa a ler e contando 5 caracteres (letras) então a variável PALAVRA conterá o texto “FILHO

Para mim, pegar qualquer palavra dentro do meu texto  e como eu sei que após cada palavra tem um espaço em branco, posso montar uma formula: Posição inicial vezes (o tamanho de cada palavra como espaço) menos (o tamanho da palavra). Exemplo:

TAMANHO <- 5
ESCREVA(“Digite um numero (1 – 5) : “)
LEIA(NUMERO)
POSICAO  <- (NUMERO * 6  –  5)
PALAVRA <- COPIA(TEXTO5, POSICAO,TAMANHO)
ESCREVAL(“A palavra será: “,PALAVRA)
O algoritmo para fazer isso, usando o Visualg 3.0 é :

============================================
Algoritmo “PALAVRA”
// Disciplina  : [Linguagem e Lógica de Programação]
// Professor   : Antonio Carlos Nicolodi
// Descrição   : ENCONTRA UMA PALAVRA DENTRO DE UM TEXTO FORMATADO
// Autor(a)    : ANTONIO PARA (TODOS)
// Data atual  : 06/06/2017
Var
// Seção de Declarações das variáveis
TEXTO5 : CARACTER
PALAVRA: CARACTER
NUMERO : INTEIRO
POSICAO: INTEIRO
TAMANHO: INTEIRO
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc…
TEXTO5 <- “CARNE PAPAI FILHO FRUTO PARIS”
TAMANHO<- 05
ESCREVA(“Digite um numero (1-5)”)
LEIA(NUMERO)
POSICAO<- (NUMERO * 6) – 5
PALAVRA<- COPIA(TEXTO5,POSICAO,TAMANHO)
ESCREVAL(“A palavra será : “,PALAVRA)
Fimalgoritmo

Aguarde, em breve teremos mais novidades.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *