<tt>
Sub-rotinas e funções na linguagem de gráficos táteis
</tt>

<ms>
Sub-rotinas e funções são blocos de código que podem ser chamados várias vezes e de vários locais dos gráficos tácteis. Uma função é uma rotina que retorna um valor quando ele é executado. Uma sub-rotina é uma rotina que não retorna um valor.
Uma sub-rotina pode ser declarada em qualquer local do gráfico. O formulário para declaração de sub-rotina é o seguinte:
sub (parâmetros)

Por exemplo:
Sub Test (x)
"Sub" é a palavra-chave que sempre identifica uma sub-rotina ou função. A etiqueta "de teste" é o nome da sub-rotina. O parâmetro "x" é é o dado que é transmitido para a sub-rotina de código. Os parâmetros de uma sub-rotina são declarados como variáveis ​​locais do mesmo.
Uma sub-rotina pode ter vários ou nenhum parâmetro.

sub Nome (x)
Sub-rotina com apenas um parâmetro
Nome sub (x, y, z)
Sub-rotina com três parâmetros.
Nome Sub ()
Sub-rotinas sem parâmetros.

A sub-rotina sempre termina com a palavra-chave "EndSub". Por exemplo:

Sub Test (x)
...
EndSub

As variáveis ​​instanciadas dentro da sub-rotina são variáveis ​​locais e só podem ser usadas dentro delas. 
Por exemplo:

Sub Test (x)
Y = 50
Círculo (x, y, 20)
EndSub

Uma sub-rotina pode ser chamada a partir da estrutura principal do gráfico ou do código interno de uma outra sub-rotina. 
Por exemplo:

---
Tente (50)

Sub Olá ()
Tente (25)
EndSub

Sub Test (x)
Círculo (x, 50,30)
EndSub
---

Uma sub-rotina pode assumir a tarefa de uma função. Para uma sub-rotina retornar um valor, onde você precisa para atribuir o "resultado" a uma variável. 
Por exemplo:

Sub Test (x)
result = x * 2
EndSub

Uma função, que retorna um determinado valor, pode ser usada como uma expressão em tarefas e operações. 
Por exemplo:

i = Tente (30)
A variável "i" contém o valor 60, visto que a função de "teste" retorna o valor "X * 2", neste caso, "30 * 2".
i = Tente (30) +7
Neste caso, a variável  "i" contém o valor 67.

A função pode ser chamada como uma sub-rotina. Neste caso, o valor de retorno é ignorado.
Tente (4)
</ms>

<rl>
TBiblosBrailleGeometry.Language
TBiblosBrailleGeometry.Language.Variables
</rl>

<ck>
011MCR16OCQVHR
</ck>

<in>
1693 0
</in>
