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: