Assim como procedimento, uma função é um bloco de programa, contendo início e fim e será identificado por um nome, através do qual será referenciado em qualquer parte do programa principal (GUIMARÃES; LAGES, 1994).
Difere-se de procedimento basicamente por poder fazer parte de um comando ou de uma expressão. Difere, também, por devolver (retornar) ao local da chamada um determinado valor. Uma função sempre devolve um resultado, um procedimento é usado como um comando qualquer, uma função sempre fará parte de um comando ou uma expressão, uma mesma função pode ser chamada em mais de um lugar no mesmo algoritmo, assim como o procedimento
função <nome> [(parâmetros:tipos)]: <tipo da função>
var
[(variáveis: tipos)]
início
<instruções>
<nome> ← <expressão ou resultado>
fim
Veja no exemplo abaixo:
função absol (x: inteiro): inteiro
var
aux: inteiro
inicio
se (x < 0) então
inicio
aux <- x*(-1)
fim
senão
inicio
aux <- x
fim
absol <- aux
fim
Exercícios:
1º) Ler 3 pares de números inteiros, calcular e imprimir a soma de cada par separadamente. Utilizar função para calcular a soma de 2 números.
algoritmo semnome
var
x, y, i: inteiro
função somar (a, b: inteiro): inteiro
var
aux: inteiro
inicio
aux <- a + b
somar <- aux
fim
inicio
i <- 1
enquanto (i <= 3) faça
escreva(“Digite 2 números inteiros: “)
leia(x, y)
escreva(“Resultado = “, somar(x, y))
i <- i + 1
fim
fim.
Was this helpful?
1 / 0