Referat.me

Название: Для чего нужна процедура Sub?

Вид работы: доклад

Рубрика: Информатика и программирование

Размер файла: 13.58 Kb

Скачать файл: referat.me-138934.docx

Краткое описание работы: Sub это то же самое, что и Function, только она не возвращает значение, а производит какое-нибудь действие. Например вывод на экран сообщения или манипулирование несколькими свойствами.

Для чего нужна процедура Sub?

Если Вы уже читали моё объяснения процедуры Function, то Вы поймёте Sub ёще быстрее! В общем так, Sub это то же самое, что и Function, только она не возвращает значение, а производит какое-нибудь действие. Например вывод на экран сообщения или манипулирование несколькими свойствами. Например MsgBox. Это тоже подпрограмма. Например:

Msgbox ("Привет!", ,"Заголовок")

Msgbox - это имя подпрограммы. А "Привет!" и "Заголовок" это передаваемые значения. Т.е. подпрограмма Msgbox выводит окно на экран с текстом "Привет!" и заголовком "Заголовок".

Теперь допустим, что Вам нужно, чтобы ваша программа вырезала из передаваемых строк все заданные символы (возьмём мой пример из "Практики"):

Sub Main()

объявляем переменную для строки

Dim Stroka As String

объявляем переменную для символа, который надо вырезать

Dim Symbol As String

объявляем переменную для места нахождения символа

Dim ReturnNumber As Integer

получаем строку, по умолчанию стоит строка

"There is nothing impossible!"

Stroka = InputBox("Введите строку", , "There is nothing impossible!")

получаем символ, по умолчанию стоит символ "i"

Symbol = InputBox("Введите символ", , "i")

запускаем цикл

Do

с помощью InStr получаем местоположение искомого символа

если оно равно нулю, покидаем цикл

ReturnNumber = InStr(1, Stroka, Symbol): If _

ReturnNumber = 0 Then Exit Do

строке присваем все символы слева до искомого и справа

Stroka = Left(Stroka, ReturnNumber - 1) + Right(Stroka, _

Len(Stroka) - ReturnNumber)

Loop

MsgBox Stroka выводим отредактированную строку на экран

End Sub

А теперь представте, что эти строки Вам нужны более одного раза и в разных местах !

Не проще ли написать подпрограмму, которая это делает и потом просто вызывать её? Так, пишем (вне модуля):

Public Sub RemSym(Stroka, Symbol)

Do

ReturnNumber = InStr(1, Stroka, Symbol): If _

ReturnNumber = 0 Then Exit Do

Stroka = Left(Stroka, ReturnNumber - 1) + Right _

(Stroka, Len(Stroka) - ReturnNumber)

Loop

MsgBox Stroka

End Sub

Вот так, а теперь можно просто вызывать эту подпрограмму и передать значения строки и символа:

RemSym Stroka, Symbol

и из любого места!

Похожие работы

  • Проектирование программного обеспечения банкомата

    Анализ теоретических аспектов функциональной деятельности современного банкомата и его сценариев. Разработка программного обеспечения работы банкомата, включающее спецификацию вариантов использования "Аутентификация", "Запрос баланса" и "Снять деньги".

  • Время выполнения скрипта

    Как засечь время выполнения вашего кода на PHP.

  • Для чего нужна процедура Function?

    Функция выполняет служебное действие, например вычисление, и возвращает значение. Вызвать функцию можно, написав её имя и передав ей аргументы, в нужном месте вашей программы.

  • Работа с текстовыми файлами в Visual Basic

    Открытие файла для чтения информации из него. Открытие файла для записи информации в него.

  • Логические операторы VB

    В Visual Basic можно выделить пять основных и важных логических операторов: And, Or, Not, Xor и Eqv.

  • Считаем время выполнения скрипта

    Вы наверняка замечали на некоторых сайтах внизу страницы надпись, что мол скрипт выполнен или страница создана за столько-то секунд. И сейчас мы сделаем это средствами PHP.

  • Путешествуя по TObject. Или как оно работает

    Каждый класс в Delphi является наследником TObject, и, соответственно, обладает всеми его свойствами и методами. Это, несомненно, полезный факт, но каковы его методы и свойства, каковы его основные свойства и как их можно использовать?

  • Графика Турбо Паскаля

    Использование графических возможностей Турбо Паскаля, подключение графического модуля Graph. Графические функции и процедуры. Общая структура графической программы. Построение фигур, определение цветов и стилей, работа с текстом, сообщения об ошибках.

  • Форматированный ввод

    Лисповская функция чтения READ. Интерпретатор. Вызов READ. Построенные структуры. Внешние устройства и доступ к ним. Типы потоков и операции используемые для ввода и вывода. Действие макроса. Запись символов и макроинтерпретаций. Системная переменная.

  • Файловый ввод/вывод

    Функциональный язык программирования. Широкие возможности для работы с файлами. Понятие потока, с которым связан файл символ. Поток - абстрактный объект, с которым можно работать, не углубляясь в аппаратную и программную реализацию работы с данными.