GoSub...Return Statement

Вызывает подпрограмму, указанную меткой, из подпрограммы или функции. Инструкция, которая идёт за меткой, выполняется до следующей инструкции 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

Please support us!