As funções
As funções são blocos de código que podem ser chamados várias vezes de vários locais do gráfico tátil.
Uma função é uma subrotina que, ao contrário de um processo, no final da sua sequência de execução retorna um valor.
Uma função é declarada exatamente como um procedimento.
- Proc Nome(parâmetro)
Por exemplo:
- Proc teste(x)
"Proc" é a palavra chave que indentifica sempre um procedimento ou função.
A etiqueta "teste" é o nome da função.
O parâmetro "x" é o dado que é transmitido ao código da função. Os parâmetros de uma função são declarados como variáveis locais do mesmo.
Em geral a estrutura de uma função é idêntica a de um procedimento, por isso também se referem ao capítulo que fala de Procedimentos. de modo que um procedimento se transforma em uma função e retorna um valor, em seu interior é necessário atribuir um valor a variável "result".
Por exemplo:
- Proc teste(x)
- result = x*2
- EndProc
Uma função, dado que retorna um valor, pode ser usada como uma expressão de assignação ou de operação.
Por exemplo:
- I = teste(30)
A variável "I" contém o valor 60, como a função "teste" retorna um valor e atribui o dado "x*2", no caso "30*2".
- I = Teste(30)+7
Neste caso a variável "I" contém valor 67, porque na primeira atribuição está atribuída uma operação de soma.
Uma função pode ser chamada como um procedimento. Neste caso, o valor de retorno é ignorado.
Teste(4)
Uma função pode ser usada como um parâmetro de um procedimento ou outra função.
Por exemplo:
- I = teste(Prova(2))
O valor atribuído ao "I" será 8. A função "teste" foi usada como parâmetro dela mesma.
Um procedimento ou função pode ser chamados em um loop recursivo, direta ou indiretamente. Ciclos recursivos são monitorados para evitar loops infinitos. Você pode usar a recursão até 256 vezes.