VisuAlg Web

Transformando os Tipos de Dados

Entenda conversoes de tipos e tabela ASCII no VisuAlg com CaracPNum, NumPCarac, Asc e Carac para transformar dados.

O VisuAlg é estritamente tipado. Você não pode somar matematicamente a palavra "10" com o número 5, pois para ele a palavra "10" é apenas um desenho. Para consertar isso, a linguagem nos permite forçar conversões (Cast) usando CaracPNum() (Texto para Número) e NumPCarac() (Número para Texto).

Exemplo de codigoVisuAlg
algoritmo "TransformandoTextos"

var
  desenhoDeNumero: caractere
  verdadeiroNumero: real

inicio
  desenhoDeNumero <- "50.5"
  // Se tentássemos somar desenhoDeNumero + 10, daria erro de tipos incompativeis

  verdadeiroNumero <- CaracPNum(desenhoDeNumero) + 10
  escreval("O cálculo funcionou: ", verdadeiroNumero)

fimalgoritmo

No nível mais profundo do seu computador, as letras não existem; tudo é baseado na Tabela ASCII (onde cada letra equivale a um número, ex: A=65, B=66...). O VisuAlg acessa essa camada raiz usando Asc("letra") para descobrir o número, e Carac(numero) para voltar a ser letra.

Exemplo de codigoVisuAlg
algoritmo "LetraSecretaASCII"

var
  codigo: inteiro

inicio
  codigo <- Asc("A")
  escreval("O código numérico da letra A é: ", codigo) // 65

  // Se somarmos 1 ao código e convertermos de volta, avançamos no alfabeto!
  escreval("A próxima letra do alfabeto é: ", Carac(codigo + 1))

fimalgoritmo
Exercício Prático: Descubra e imprima o valor numérico ASCII da letra "Z". Depois, transforme o número inteiro 90 de volta em Caractere.