GoSub...Return Statement

Llapada a una subrutina indicada por una etiqueta d'una subrutina o una función. La instrucción que sigue a la etiqueta execútase mientres nun s'atope una instrucción Return. Dempués el programa sigue cola instrucción que sigue a GoSub .

Sintaxis:

Consulte los parámetros

Parámetros:

Sub/Function

bloque d'instrucciones

Etiqueta

bloque d'instrucciones

Etiqueta GoSub

Exit Sub/Function

Etiqueta:

bloque d'instrucciones

Volver

Final de Sub/Function

La instrucción GoSub llapada a una subrutina local indicada por una etiqueta dende dientro d'una subrutina o función. El nome de la etiqueta tien de terminar con un caráuter de dos puntos (":").

Iconu d'alvertencia

Si'l programa atopa una instrucción Return que nun va precedida de GoSub, LibreOffice Basic devuelve un mensaxe de fallu. Use Exit Sub o Exit Function p'asegurase de que'l programa sala d'una Sub o Function enantes de llegar a la siguiente instrucción Return.


L'exemplu siguiente demuestra l'usu de GoSub y Return. Al executar una seición de programa dos vegaes, ésti calcula'l raigañu cuadráu de dos númberos qu'introdució l'usuariu.

Exemplu:

Sub ExampleGoSub

Dim iInputa As Single

Dim iInputb As Single

Dim iInputc As Single

    iInputa = Int(InputBox("Escriba'l primer númberu: ","EntradaNúmberu"))

    iInputb = Int(InputBox("Escriba'l segundu númberu: ","EntradaNúmberu"))

    iInputc=iInputa

    GoSub SquareRoot

    Print "El raigañu cuadráu de";iInputa;" ye";iInputc

    iInputc=iInputb

    GoSub SquareRoot

    Print "El raigañu cuadráu de";iInputb;" ye";iInputc

    Exit Sub

SquareRoot:

    iInputc=sqr(iInputc)

    Return

End Sub