GoSub...Return Statement

Calls a subroutine that is indicated by a label from a subroutine or a function. The statements following the label are executed until the next Return statement. Afterwards, the program continues with the statement that follows the GoSub statement.

Sintaksa:

vidi Parametre

Parametri:

Završi Sub/Function

blok izjava

Oznaka

blok izjava

GoSub Label

Izađi Sub/Function

Oznaka:

blok izjava

Vrati

Završi Sub/Function

GoSub izraz zove lokalnu podrutinu indiciranu oznakom unutar podrutine ili funkcije. Naziv oznake mora završavati sa tačkom (":").

Warning Icon

PREVEDIAko program naiđe na Vrati naredbu kojoj ne prethodi GoSub, LibreOffice Basic vraća poruku greške. Koristi Exit Sub ili Exit Function kako bi se osiguralo da program ostavlja Sub ili Function prije nego dosegne sljedeću Vrati naredbu.


Sljedeći primjer pokazuje korištenje GoSub i Vrati . Izvršenjem sekcije programa dvaput, program izračunava kvadratni korijen od dva broja koji su unesene od strane korisnika.

Primjer:

Sub ExampleGoSub

Dim iInputa As Single

Dim iInputb As Single

Dim iInputc As Single

    iInputa = Int(InputBox("Unesi prvi broj: ","NumberInput"))

    iInputb = Int(InputBox("Unesi drugi broj: ","NumberInput"))

    iInputc=iInputa

    GoSub SquareRoot

    Print "Kvadratni korijen of";iInputa;" je";iInputc

    iInputc=iInputb

    GoSub SquareRoot

    Print "Kvadratni korijen of";iInputa;" je";iInputc

    Exit Sub

SquareRoot:

    iInputc=sqr(iInputc)

    Return

End Sub