Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы программирования.doc
Скачиваний:
3
Добавлен:
13.11.2018
Размер:
3.32 Mб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное учреждение

высшего профессионального образования

«РОСТОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ»

Утверждено на заседании кафедры высшей математики 11.06.2011 г.

Методическое указание

по дисциплине «Информатика»

для бакалавров 1, 2-го курсов ДТИ, ИИЭС

Часть 2 Основы программирования

Ростов-на-Дону

2011

УДК 681.517.07

Методическое указание по дисциплине «Информатика» для бакалавров 1, 2-го курсов ДТИ, ИИЭС Ч.2. Основы программирования. – Ростов н/Д: Рост. гос. строит. ун-т, 2011. – 34 с.

Предназначено для усвоения студентами понятий алгоритмизации, свойств, способов записи и основных структур алгоритмов. Процесс разработки программ рассмотрен на примере изучения языка высокого уровня Visual Basic for Applications (VBA), приведены примеры решения задач на VBA и оформления результатов вычисления.

Электронная версия методических указаний находится в библиотеке, ауд. 224.

УДК 681.517.07

Составитель:

канд.физ.-мат.наук, доц. Л.А.Кладенок

Рецензент:

канд.физ.-мат.наук, доц. С.А.Никитин

Редактор Т.М. Климчук

Доп. план 2011 г., поз. 187

Подписано в печать 12.07.11. Формат 6084/16. Бумага писчая. Ризограф.

Уч.-изд.л. 2,8. Тираж 20 экз. Заказ 389.

Редакционно-издательский центр

Ростовского государственного строительного университета

344022, Ростов-на-Дону, ул. Социалистическая, 162.

Ó Ростовский государственный строительный университет, 2011

Решения задач в среде Visual Basic for Applications Лабораторная работа № пр1 «Создание процедур»

Цель работы: научиться создавать объект Кнопка на Рабочем листе, изменять его имя, создавать для него Процедуру-Событие в редакторе VBA, записывать линейный алгоритм в кодах VBA.

Теоретические сведения

Visual Basic for Applications (VBA, Visual Basic для приложений) — немного упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office, а также во многие другие программные пакеты, такие как AutoCAD, WordPerfect. VBA расширяет функциональность ранее использовавшихся специализированных макро-языков, таких как WordBasic. Может использоваться для управления приложением (меню, панели инструментов, формы пользователя, диалоговые окна и тд.). VBA может также использоваться для создания импорта и экспорта различных форматов файлов.

VBA является интерпретируемым языком. Как и следует из его названия, VBA близок к Visual Basic, но может выполняться лишь в рамках приложения, в которое он встроен. Программы, написанные в VBA могут быть запущены только из того приложения, в котором они были созданы, в связи с этим они называются процедуры. Кроме того, VBA может использоваться для управления одним приложением из другого, с помощью OLE Automation (например, таким образом можно создать документ Word на основе данных из Excel).

Процедуры, константы, переменные

Описание последовательности действий, достаточно определенное для того, чтобы ее можно было выполнить при помощи некоторого автоматического устройства называют алгоритмом (algorithm). Обычно эту последовательность записывают (кодируют) с помощью некоторых формальных обозначений. При этом формальная система, предназначенная для записи алгоритмов, называется алгоритмическим языком, сам текст алгоритма — программой, а процесс его создания — программированием.

Для простых частей сложной задачи легче составить алгоритмы и написать программы, которые называются процедурами.

Общие процедуры-программы имеют стандартный синтаксис:

[Область видимости] Sub Имя_Процедуры (Список_Параметров)

[раздел описаний (констант и переменных)]

тело процедуры (операторы)

End Sub

[Область видимости] – указывают Public, если процедура глобальная и доступна (видна) из других модулей, либо Private, если процедура локальная и доступна (видна) только внутри данного модуля и не может быть вызвана из других модулей.

Sub – зарезервированное слово VBA объявляет начало процедуры, за ним задается имя_процедуры, в скобках указывается список параметров, передаваемых при вызове процедуры из программы (список параметров может отсутствовать).

Список_Параметров – список переменных, передаваемых процедуре при вызове ее из другой процедуры: Имя_Параметра As Тип_Данных, As – зарезервированное слово VBA указывает, что за ним следует тип переменной. [раздел описаний (констант и переменных)] – раздел описания констант и переменных.

Определение: константа — это поименованная область памяти для хранения данных, значение которым присваивается при определении константы; значения остаются посто­янными и не могут быть изменены во время выполнения программы.

Для определения констант служит зарезервированное слово Const.

Синтаксис описания констант:

Const Имя_Константы As Тип = значение

Например:

' Объявлена числовая константа для хранения

'значения числа Pi

Const Pi As Single = 3.1415926

где Const (Константа) — зарезервированное слово, которое сообщает VBA, что декларируется константа и резервируется область памяти для ее хранения; Имя_Константы — имя константы, не входящее в перечень зарезервированных слов VBA; As (Как) — зарезервированное слово, которое сообщает VBA, что определяется тип данных константы; Тип — Тип_константы определяет размер памяти занимаемой константой (прил. 2, п.1.6, табл. 4). При наборе программы в среда редактора VBA после набора зарезервированного слова As раскрывается список типов объектов и базовые Типы_Дынных. Выбранный в списке Тип_Данных устанавливается двойным щелчком мыши, нажатием клавиши <Таb> или нажатием клавиши <Enter>.

Определение: переменная — это поименованная область памяти для хранения данных, которые могут изменяться в процессе выполнения программы.

Поскольку в VBA имеются определенные соглашения по отношению имени и типа переменной, то во избежание путаницы типов данных, переменные необходимо описывать или декларировать.

Синтаксис описания переменных:

Dim [Static] Имя_Переменной [ As Тип]

где Dim (Определить) — зарезервированное слово, которое сообщает VBA, что декларируется переменная и резервируется область памяти для ее хранения. Имя_Переменной — имя переменной, не входящее в перечень ключевых слов VBA. As (Как) — зарезервированное слово, которое сообщает VBA, что определяется тип данных для переменной. Тип — Тип_переменной определяет размер памяти занимаемой переменной (прил. 2, п.1.6, табл. 4). Static (Статический) — зарезервированное слово VBA, позволяет сохранить значение переменной между вызовами процедуры, в которой она объявлена, инструкция Static используется только на уровне процедуры.

Тело процедуры (операторы) – алгоритм записанный на языке VBA.

End Sub – операторная скобка, указывающая на конец процедуры. Каждому оператору Sub обязательно соответствует End Sub.

Примечание: В разделе [раздел описаний (констант и переменных)] сначала описываются все константы, а затем все переменные. [раздел описаний (констант и переменных)] не является обязательным в процедурах.

Область видимости переменных и констант (три уровня):

1) До сих пор говорилось об описании констант и переменных внутри процедуры. Их также можно объявлять в верхней части модуля, которая называется областью общих объявлений. Область объявления переменных определяет область их видимости. Если переменная (константа) объявлена в процедуре, то процедура их видит и работает с ними, а другие процедуры не могут использовать эти переменные и их значения. Такие переменные называются локальными. В этом случае говорят, что переменная видна на уровне процедуры.

2) Для того чтобы значения определенных констант и переменных были доступны всем процедурам данного модуля, надо их объявить в области общих объявлений модуля (General Declarations), перед словом Dim поставить слово Private. Такие переменные и константы видимы на уровне модуля.

3) Для того чтобы переменные и константы модуля можно было использовать в любой процедуре любого модуля данного приложения, необходимо описать их как глобальные. Нужно помнить, что они находятся в оперативной памяти все время выполнения приложения и, следовательно, потребляют системные ресурсы. Глобальные переменные объявляются в области общих объявлений модуля, перед словом Dim ставится слово Public.

Аналогично описываются в области общих объявления модуля константы:

[Public|Private] Const Имя_Константы As Тип = значение

Но если в верхней части окна модуля есть оператор Option Explicit, то необходимо описать все переменные и константы.

Инструкция Option Explicit в секции General находится в модуле до всех процедур.При использовании инструкции Option Explicit необходимо явно описать все переменные с помощью инструкций Dim, Private, Public, ReDim или Static. При попытке использовать неописанное имя переменной возникает ошибка во время компиляции

Процедуры обработки событий (Процедура_Событие)

Событие (event) – это действие над объектом (например: нажатие командной кнопки, выполнение директивы меню, открытие или закрытие таблицы Excel и т.п.) Имя Процедуры_События состоит из имени объекта и действия (События), которые объединяются символом подчеркивания “_”.

Синтаксис Процедуры_События:

Private Sub ИмяОбъекта_Событие ( )

тело процедуры (операторы)

End Sub

Общее между общей процедурой и Процедурой_События зарезервированное слово Sub. Принципиальное отличие общей процедуры от Процедуры_События заключается в том, что для общей процедуры имя подбирает пользователь, а для Процедуры_События имя создаётся средой VBA.

Задача 1(линейный алгоритм). Найти площадь и периметр параллелограмма, у которого заданы стороны a,b и высота h. Составить программу (рис. 1)