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

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