Show
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 VisualGA tabela a seguir mostra as funções de manipulação de caracteres disponíveis no VisualG:
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) fimalgoritmoObtendo o código ASCII do caractere inicialvar 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) fimalgoritmoContando os caracteres da stringvar palavra : caractere comprimento : inteiro inicio escreval("Digite uma palavra:") leia(palavra) comprimento <- Compr(palavra) escreval ("A palavra ", palavra, " possui ", comprimento, " caracteres") fimalgoritmoSeparando partes de uma stringvar 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) fimalgoritmoLocalizando sequências de caracteresvar 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) fimalgoritmoConvertendo número em caracterevar numero : inteiro convertido : caractere inicio escreval("Digite um número:") leia(numero) convertido <- NumpCarac(numero) escreval("O número convertido para caractere é ", convertido) fimalgoritmoVeja 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:
17 Comentários em Lógica de Programação – Funções de Manipulação de Strings (Literais)
Prazer para todos. Fiz este exercício para calcular as calorias gastas em uma refeição. Entra com prato, bebida e sobremesa. O problema está em comparar as strings. O VisualG não aceita a comparação. Por exemplo, entro com a string carne, o programa diz: esperava encontrar então na linha se (prato = carne) então. Não há explicação possível para esse problema. Não sei onde está o erro, para mim, a lógica está correta. Obrigado. Algoritmo "semnome" // Disciplina : [Linguagem e Lógica de Programação] // Professor : // Descrição : Aqui você descreve o que o programa faz! (função) // Autor(a) : Nome do(a) aluno(a) // Data atual : 02/10/2017 Var // Seção de Declarações das variáveis cal1,cal2,cal3,p1,p2,p3,caltotal:inteiro prato,bebida,sobremesa:caractere
Inicio escreval("Entre com o prato") leia (prato) escreval(prato) se (prato = carne) então cal1 <- 350 senão se (prato = peixe) então cal1 <- 230 senão se (prato = frango) então cal1 <- 250 senão cal <- 180 fimse fimse fimse escreval("Entre com a bebida") leia (bebida) se (bebida = cha) então cal2 <- 20 senão se (bebida = suco de laranja) então cal2 <- 100 senão se (bebida = suco de melao) então cal2 <- 100 senão se (bebida = refrigerante diet) então cal <- 65 fimse fimse fimse fimse escreval("Entre com a sobremesa") leia (sobremesa) se (sobremesa = abacaxi) então cal3<- 75 senão se (sobremesa = sorvete diet) então cal <- 110 senão se (sobremesa = mouse diet) então cal3 <- 170 senão se (sobremesa = mouse chocolate) então cal <- 200 fimse fimse fimse fimse senão escreval ("Opção inválida.") caltotal <- cal1 + cal2 + cal3 escreval("O prato escolhido foi: ",prato) escreval("A bebida escolhida foi: ",bebida) escreval("A sobremesa escolhida foi: ",sobremesa) escreval("O total de calorias é de: ",caltotal) Fimalgoritmo |