Інструкція GoSub...Return
Викликає підпрограму, зазначену міткою, з підпрограми або функції. Інструкція, яка йде за міткою, виконується до наступної інструкції Return. Потім програма продовжує роботу з інструкції, наступної за інструкцією GoSub.
Синтаксис:
див. параметри
Параметри:
Sub/Function
блок інструкцій
Мітка
блок інструкцій
GoSub Мітка
Exit Sub/Function
Мітка:
блок інструкцій
Return
End Sub/Function
Інструкція GoSub викликає локальну підпрограму, зазначену міткою, з процедури або функції. Ім'я мітки повинно закінчуватися двокрапкою (":").
Якщо програма зустрічає інструкцію Return, якій не передує інструкція GoSub, LibreOffice Basic повертає повідомлення про помилку. Використовуйте інструкцію Exit Sub або Exit Function, щоб гарантувати, що програма вийде з процедури або функції, перш ніж досягне наступної інструкції Return.
У наступному прикладі демонструється використання інструкцій GoSub і Return. Виконуючи ділянку програми двічі, програма обчислює квадратний корінь з двох чисел, введених користувачем.
Приклад:
Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
iInputa = Int(InputBox("Введіть перше число: ","Введення числа"))
iInputb = Int(InputBox("Введіть друге число: ","Введення числа"))
iInputc=iInputa
GoSub SquareRoot
Print "Квадратний корінь із";iInputa;" рівний";iInputc
iInputc=iInputb
GoSub SquareRoot
Print "Квадратний корінь із";iInputb;" рівний";iInputc
Exit Sub
SquareRoot:
iInputc=sqr(iInputc)
Return
End Sub