Lógica de Programação – Funções de Manipulação de Strings (Literais)

Funções de Manipulação de Strings

A maioria das linguagens de programação possui funções que permitem a Manipulação de Strings (caracteres / literais). Podemos estudar algumas delas em Lógica de Programação usando o VisualG.

Vamos aprender a utilizar algumas dessas funções para efetuar tratamento de strings.

Funções de manipulação de strings (caracteres) no VisualG

A tabela a seguir mostra as funções de manipulação de caracteres disponíveis no VisualG:

 
Função Significado
Asc(x : caractere) Retorna um número inteiro com o código ASCII do primeiro caractere da expressão.
Carac(x : inteiro) Retorna o caractere cujo código ASCII corresponda à expressão
Caracpnum(x : caractere) Retorna o inteiro ou real representado pela expressão matemática (ou valor numérico no formato literal) – converte caractere em numérico
Compr(x : caractere) Retorna um inteiro contendo o comprimento (quantidade de caracteres) da string
Copia(x : caractere; p, n : inteiro) Retorna uma string contendo uma cópia parcial da expressão, a partir do caractere p, contendo n caracteres. Os caracteres são numerados da esquerda para a direita, começando em 1
Maiusc(x : caractere) Retorna uma string contendo a expressão em maiúsculas
Minusc(x : caractere) Retorna uma string contendo a expressão em minúsculas
Numpcarac(x : inteiro ou real) Retorna a representação de x como uma cadeia de caracteres  (converte um tipo numérico para caractere)
Pos(seq, x : caractere) Retorna um inteiro que indica a posição em que a cadeia de caracteres (seq) se encontra dentro da cadeia x, ou zero se seq não estiver contida em x

Vamos ao exemplos de uso de algumas dessas funções no VisualG:

Convertendo para caixa-alta

var
  valor : caractere
  convertida : caractere
inicio
   leia(valor)
   convertida <- maiusc(valor)
   escreva (convertida)
fimalgoritmo

 

 Obtendo o código ASCII do caractere inicial

var
  palavra : caractere
  valor : inteiro
inicio
   escreval("Digite uma palavra:")
   leia(palavra)
   valor <- Asc(palavra)
   escreval ("O código ASCII da primeira letra de ", palavra, " é ", valor)
fimalgoritmo

Contando os caracteres da string

var
  palavra : caractere
  comprimento : inteiro
inicio
   escreval("Digite uma palavra:")
   leia(palavra)
   comprimento <- Compr(palavra)
   escreval ("A palavra ", palavra, " possui ", comprimento, " caracteres")
fimalgoritmo

 

Separando partes de uma string

var
   x, y, z : real
   data, dia, mes, ano: caractere
inicio
   escreval("Digite uma data:")
   leia (data)
   dia <- copia(data;1;2)
   mes <- copia(data;4;2)
   ano <- copia(data;7;4)
   escreval("Dia: " + dia)
   escreval("Mês: " + mes)
   escreval("Ano: " + ano)
fimalgoritmo

 

Localizando sequências de caracteres

var
   palavra : caractere
   sequencia : caractere
   posicao : inteiro
inicio
   escreval("Digite uma palavra:")
   leia(palavra)
   escreval("Digite uma letra ou sequência de caracteres:")
   leia(sequencia)
   posicao <- Pos(sequencia, palavra)
   escreval("O caractere foi encontado na posição ", posicao)
fimalgoritmo

 

Convertendo número em caractere

var
   numero : inteiro
   convertido : caractere
inicio
   escreval("Digite um número:")
   leia(numero)
   convertido <- NumpCarac(numero)
   escreval("O número convertido para caractere é ", convertido)
fimalgoritmo

Veja também: Variáveis e Tipos de Dados em Lógica de Programação

Você pode também assistir ao vídeo abaixo, do canal da Bóson Treinamentos no YouTube, onde explico os procedimentos descritos no artigo:

Sobre Fábio dos Reis (1194 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

18 Comentários em Lógica de Programação – Funções de Manipulação de Strings (Literais)

  1. proxima aula???

  2. Ola, Fabio pode me dizer se as aula de logica encerra em 28 ja posso buscar uma linguagem para aprender ou voce parou por aqui mesmo.

    • Ainda teremos mais algumas aulas Thiago, principalmente sobre Algoritmos e Estruturas de Dados. mas já dá tranquilamente para você começar a estudar linguagens de programação com o que foi apresentado até aqui. Abraço!

  3. Jerônimo de Castro // 02/04/2016 em 19:10 // Responder

    Parabéns pela iniciativa e pela didática, senhor Fábio. Suas aulas são bem edificantes.

  4. boa noite fabio poderia me mandar o link para eu baixar o visualg

  5. Olá Fábio! Gostaria de saber se vc tem o conteúdo (em PDF), das aulas de lógica de programação?

  6. Ola Fabio seu videos me ajudaram bastante, estou começando a entender melhor essa área de programão muito obrigado por disponibilizar essa material vocês esta ajudando muita pessoa assim .

  7. muito bom seus videos, vc tem todos em um só video ou talvez em pdf, meu email= kiryla1@gmail.com, agradeço

  8. programa : PigLatin
    tipo
    PigLatinlenge = registro
    digitada : cadeia
    sc : cadeia
    st : caractere
    ppl : cadeia
    comp : inteiro
    letra : inteiro
    fim_registro
    var
    pl : cadeia
    palavras : PigLatinlenge
    resp : cadeia
    inicio
    resp <- sim
    pl <- ay
    enquanto (resp = "sim") faça
    escreval ("Digite uma palavra para converter em Pig Latin :")
    leia (palavra.ppl)
    palavra.comp <- compr(palavra.ppl)
    palavra.letra <- (palavra.ppl / palavra.ppl) + 1
    palavra.final <- palavra.comp – 1
    palavra.sc <- copia(palavra.ppl;palavra.letra;palavra.final)
    palavra.st <- copia(palavra.ppl;1;1)
    palavra.pl <- palavra.sc + palavra.st + pl
    escreval ("A palavra escrita foi :"palavra.ppl)
    escreval ("Sua forma em Pig Latin é:"palavra.pl)
    escreval("deseja continuar a traduzir palavras ? sim/não")
    leia (resp)
    fim_enquanto
    fim
    Esta correto?

  9. Boa noite, tudo bem?
    Não encontrei o link para download do VisualG, segundo o video, aqui tinha informações.

  10. Não encontrei o link para baixar o visualG, que segundo o vídeo tinha disponível por aqui

  11. Ana Carolina // 20/08/2023 em 11:02 // Responder

    Olá Fábio! Bom dia,
    Tenho que escrever um código que capture uma amostra de origem e mais três amostras e apresente o percentual de similaridade de cada uma das amostras em relação a amostra de origem, mas não faço ideia de como começar, se possível, o senhor pode fazer uma aula que ensine como fazer esse código?

    Programa: VisuALG
    * Utilizar o código de BLAST

Escreva um comentário

Seu e-mail não será divulgado


*