Lógica de Programação – Funções
No tutorial anterior aprendemos o que são subrotinas e como usar Procedimentos em Lógica de Programação. Neste artigo continuar nosso estudo de subrotinas dando ênfase às Funções.
Uma função é uma subrotina que executa uma tarefa, como o procedimento, porém retornando um resultado ao chamador.
Podemos declarar uma função em português estruturado da seguinte forma:
funcao nome-da-funcao (parâmetros) : tipo_retorno Declarações Internas inicio Comandos fimfuncao
Instrução retorne
A instrução retorne finaliza a execução da função e retorna o valor resultante ao chamador. O controle é retornado ao ponto no qual o procedimento foi chamado.
Vamos ver um exemplo de criação de uma função.
Exemplo de Função
Vamos criar uma função de exemplo que calcule o cubo de um número fornecido pelo usuário:
funcao cubo(x:inteiro) : inteiro var resultado : inteiro inicio resultado <- x * x * x retorne resultado fimfuncao
Chamando a função
Vejamos agora como usar a função criada em um programa:
var n,res : inteiro funcao cubo(x:inteiro) : inteiro var resultado : inteiro inicio resultado <- x * x * x retorne resultado fimfuncao inicio escreval("Digite um número para calcular seu cubo:") leia(n) res <- cubo(n) escreval("O cubo calculado é ", res) fimalgoritmo
Reaproveitando uma função
Vamos ver agora como podemos reaproveitar a função criada, efetuando diversas chamadas a ela para calcular os cubos dos números de 1 até 10.
Para isso criaremos um laço para e chamaremos a função dentro dele, 10 vezes.
var i,res : inteiro funcao cubo(x:inteiro) : inteiro var resultado : inteiro inicio resultado <- x * x * x retorne resultado fimfuncao inicio para i de 1 ate 10 faca res <- cubo(i) escreval("O cubo de ", i, " é ", res) fimpara
Funções internas
A maioria das linguagens de programação possui diversas funções pré-programadas que podemos utilizar em nossos programas.
Veja alguns exemplos de funções matemáticas presentes no simulador VisualG:
Função | Descrição |
---|---|
Abs (valor : real) : real | Valor absoluto |
Cos (valor : real) : real | Cosseno |
Exp (base, expoente) | Exponenciação |
Int (valor : real) : inteiro | Converter valor em inteiro |
Log (valor : real) : real | Logaritmo base 10 |
Raizq (valor : real) : real | Raiz quadrada |
Exemplo de uso de funções pré-programadas
Calculando o log base 10 de um número qualquer – função log(). Veja que por se tratar de uma função interna, não é necessário declará-la (criá-la):
var logaritmo, numero : real inicio escreval("Digite um número para calcular seu logaritmo:") leia(numero) logaritmo <- log(numero) escreval("O log do numero digitado é ", logaritmo) fimalgoritmo
Boas práticas para uso de subrotinas
- Familiarize-se com o conjunto de funções e procedimentos da linguagem que você usará
- Separe as definições de funções e procedimentos no código por uma linha em branco
- Procure não usar os mesmos nomes de argumentos que a subrotina usa e nomes de variáveis passadas à subrotina
- Sempre escolha nomes de subrotinas e parâmetros que possuam significado condizente
É isso aí! Assista agora ao vídeo da Bóson Treinamentos para ver a explicação sobre Funções em Lógica de Programação: