Ukaz GoSub...Return

Pokliče podprogram, katerega dostop je oznaka v podprogramu Sub ali funkciji Function. Izvaja ukaze, ki oznaki sledijo do naslednjega ukaza Return. Potem nadaljuje program z ukazom, ki sledi ukazu GoSub.

Skladnja:


GoSub oznaka[:]

Parametri:

oznaka: identifikator vrstice, v kateri naj se nadaljuje izvajanje. Domet oznake je program oz. podprogram, v katerem se nahaja in kjer je sklic nanjo.

Ukaz GoSub pokliče krajevni podprogram, katerega vhod v podprogramu ali funkciji je navedena oznaka. Ime oznake se mora končati s podpičjem (":").


  Sub/Function foo
      ' ukazi
      GoSub label
      ' ukazi
      Exit Sub/Function
  label:
      ' ukazi
      Return
  End Sub/Function
Ikona opozorila

Če program naleti na ukaz Return, ne da bi prej izvedel ukaz GoSub, bo LibreOffice Basic javil napako. Uporabljajte Exit Sub ali Exit Function, da veste zagotovo, da je program podprogram ali funkcijo zapustil, preden je lahko prišel do naslednjega ukaza Return.


Naslednji primer naj služi kot prikaz uporabe GoSub in Return. Če želite, da program izračuna kvadratni koren dveh števil, ki jih je uporabnik vnesel, izvedite del programa dvakrat.

Primer:


Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
    iInputa = Int(InputBox("Vnesite prvo število: ","Vnos števila"))
    iInputb = Int(InputBox("Vnesite drugo število: ","Vnos števila"))
    iInputc=iInputa
    GoSub SquareRoot
    Print "Kvadratni koren ";iInputa;" je";iInputc
    iInputc=iInputb
    GoSub SquareRoot
    Print "Kvadratni koren ";iInputb;" je";iInputc
    Exit Sub
SquareRoot:
    iInputc=sqr(iInputc)
    Return
End Sub

Podprite nas!