Модуль
Зміст
Покажчик 🔎︎

# Інструкція 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