Algoritmo "08_01 função_calculadora_potencia"
// Algoritmo que recebe como entrada o valor da base e do expoente e calcula e
// apresenta a potência, fazendo o uso de uma função para o cálculo.
Var
     valor_base, valor_expoente, valor_resultado: real

// Definição da função que calcula a potência
Funcao calcula_potencia(base,expoente: real): real
Var
     resultado: real
Inicio
     resultado<-base^expoente
     retorne resultado
FimFuncao

// Início do programa principal
Inicio
      // Entrada de dados
     Escreva ("Digite o valor da base: ")
     Leia (valor_base)
     Escreva ("Digite o valor do expoente: ")
     Leia (valor_expoente)
    // Chamada da função
     valor_resultado <- calcula_potencia(valor_base,valor_expoente)
     // Saída dos dados
     Escreva ("O valor do resultado da operação é: ", valor_resultado)
FimAlgoritmo

// O Visualg nem sempre é o mais amigável!
// Declaramos como tipo real (com possibilidade de casas decimais), mas
// a intenção inicial era declarar todas as variáveis como inteiros.
// Infelizmente, o Visualg apresenta um erro como se fosse um número real
// sendo associado a uma variável do tipo inteiro, portanto fizemos essa
// adaptação.
// Por outro lado, declarando o tipo como real permite que
// façamos cálculos com base e expoentes não inteiros (mais flexível?)
