GoSub...Return Statement

Vokas subproceduron specifita per etikedo de subproceduro aƭ funkcio. La ordonoj post la etikedo ruliĝas ĝis la posta ordono Return. Poste, la programo daƭros ruliĝi ĉe la ordono kiu sekvas la ordonon GoSub .

Sintakso:

vidu je Parametroj

Parametroj:

Sub/Function

ordona bloko

Etikedo

ordona bloko

GoSub Etikedo

Exit Sub/Function

Label:

ordona bloko

Return

End Sub/Function

La ordono GoSub vokas lokan subproceduron specifita per etikedo de ene de subproceduro aĆ­ funkcio. La nomo de la etikedo devas fini per dupunkto (":").

Warning Icon

Se la programo renkontas ordonon Return sen antaƭa GoSub, LibreOffice Basic donas prieraran mesaĝon. Necesas Exit Sub aƭ Exit Function por certigi ke la programo eliras el la Sub aƭ Function antaƭ ol atingi la postan ordonon Return.


La jena ekzemplo montras la uzadon de GoSub kaj Return. Rulante dufoje sekcion de programo, la programo kalkulas la kvadratan radikon de du numeroj tajpitaj de la uzanto.

Ekzemplo:

Sub ExampleGoSub

Dim iInputa As Single

Dim iInputb As Single

Dim iInputc As Single

    iInputa = Int(InputBox("Tajpu la unuan numeron: ","NumberInput"))

    iInputb = Int(InputBox("Tajpu la duan numeron: ","NumberInput"))

    iInputc=iInputa

    GoSub SquareRoot

    Print "La kvadrata radiko de";iInputa;" estas";iInputc

    iInputc=iInputb

    GoSub SquareRoot

    Print "La kvadrata radiko de";iInputb;" estas";iInputc

    Exit Sub

SquareRoot:

    iInputc=sqr(iInputc)

    Return

End Sub