Инф VBA
.pdfТ.А. Волосатова
Информатика.
Программирование на VBA.
Учебное пособие
для лабораторного практикума
и подготовки к тестированию
Ростов-на-Дону
2013
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИИ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «РОСТОВСКИЙ ГОСУДАРСТВЕННЫЙ СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ»
Т.А. Волосатова
Информатика.
Программирование на VBA.
Учебное пособие
для лабораторного практикума
и подготовки к тестированию
Утверждено редакционно-издательским советом университета в качестве учебного пособия
Ростов-на-Дону
2013
УДК 004.9
В68
Рецензент: доцент кафедры информационных таможенных технологий и информатики
Ростовского филиала Российской таможенной академии М.М. Цвиль
Волосатова Т.А.
В68 Информатика. Программирование на VBA. Учебное пособие для лабораторного практикума и подготовки к тестированию: учебное пособие. – Ростов н/Д: Рост. гос. строит. ун-т, 2013.– 132 с. с прил.
Вучебном пособии изложен материал, необходимый для освоения программирования на языке VBA .Оно будет полезным для студентов очной и заочной форм обучения при выполнении лабораторных работ и при подготовке
ктестированию.
Впособии достаточно подробно и в доступной форме излагаются такие ключевые темы, как основы алгоритмизации, эволюция и классификация языков программирования, принципы структурного и объектноориентированного программирования, основы программирования на VBA. В каждом разделе, после изложения концептуального материала, даны контрольные вопросы в форме тестов. В конце учебного пособия описаны лабораторные работы и подробная методика их выполнения. В приложении даны задания для самостоятельного решения.
Предназначено для направления подготовки (специальности) 190600.62 «Эксплуатация транспортно-технологических машин и комплексов», 190700.62 «Технология транспортных процессов», 270800.62 «Строительство», 280700.62 «Техносферная безопасность», 120401.65 «Прикладная геодезия».
Данное учебное пособие издано при непосредственной помощи и поддержке Ростовского государственного строительного университета.
УДК 004.9
© Ростовский государственный строительный университет, 2013 © Волосатова Т.А. 2013
Ог л а в л е н и е
1.Этапы решения задач на компьютерах. Трансляция: компиляция и
|
интерпретация |
4 |
2. |
Понятие алгоритма и его свойства. Способы записи алгоритма. Блок-схема |
|
|
алгоритма |
11 |
3. |
Типы алгоритмов |
|
3.1.Линейный алгоритм |
18 |
3.2.Разветвляющийся алгоритм |
18 |
3.3.Циклические алгоритмы |
20 |
4. Эволюция и классификация языков программирования. Основные понятия
языков программирования |
|
4.1. Основные понятия |
29 |
4.2. Эволюция языков программирования |
30 |
4.3. Классификация языков программирования |
38 |
5.Понятие о структурном программировании. Модульный принцип программирования. Подпрограммы. Принципы проектирования программ
"сверху-вниз" и "снизу-вверх" |
44 |
|
6. Объектно-ориентированное программирование |
52 |
|
7. Язык программирования Visual Basic for Applications (VBA) |
|
|
7.1 |
Введение в VBA |
57 |
7.2 |
Структура проекта VBA |
58 |
7.3 |
Объекты. Свойства. Методы. События |
61 |
7.4 |
Процедуры VBA |
62 |
7.5 |
Виды и типы данных |
65 |
7.6 |
Описание переменных и констант |
67 |
7.7 |
Оператор присваивания. Основные операции и стандартные |
|
|
встроенные функции VBA. |
70 |
7.8 |
Программирование разветвляющихся процессов |
76 |
7.9 |
Программирование циклических процессов |
78 |
7.10 Ввод и вывод данных в VBA |
80 |
|
7.11 Массивы |
82 |
|
Лабораторный практикум |
88 |
|
Библиографический список |
117 |
|
Приложение 1 |
118 |
|
Приложение 2 |
119 |
4
ГЛАВА 1. Этапы решения задач на компьютерах.
Трансляция: компиляция и интерпретация
Использование компьютера при решении различных задач упрощает работу человека и делает возможным решение сложных и трудоемких задач. Процесс решения задачи на компьютере - это совместная деятельность человека и ЭВМ.
Этот процесс можно представить в виде следующей технологической цепочки:
ПОСТАНОВКА ЗАДАЧИ → МАТЕМАТИЧЕСКАЯ ФОРМАЛИЗАЦИЯ → ПОСТРОЕНИЕ АЛГОРИТМА → СОСТАВЛЕНИЕ ПРОГРАММЫ НА ЯЗЫКЕ ПРОГРАММИРОВАНИЯ → ОТЛАДКА И ТЕСТИРОВАНИЕ ПРОГРАММ→ ПРОВЕДЕНИЕ РАСЧЕТОВ → АНАЛИЗ ПОЛУЧЕННЫХ РЕЗУЛЬТАТОВ→ СОПРОВОЖДЕНИЕ ПРОГРАММЫ.
Постановка задачи
На первом этапе человек, хорошо представляющий предметную область задачи, четко определяет цель задачи, дает словесное описание содержания и предлагает общий подход к ее решению.
Математическая формализация
Создается математическая модель решаемой задачи, которую можно реализовать на компьютере. Сначала определяются существенные параметры модели и анализируются характер и сущность всех величин, используемых в задаче. Модель должна адекватно отражать реальную задачу, но не должна быть перегружена большим количеством параметров. Затем с помощью математических формул описываются существующие взаимосвязи между определенными в модели величинами. Далее выбирается метод решения поставленной задачи. При оценке эффективности метода учитывается точность вычислений, время решения задачи, требуемый объем памяти, рассматриваются вопросы влияния различных факторов на конечный результат.
Построение алгоритма
5
В соответствии с выбранным методом решения составляется алгоритм решения задачи. Об основных принципах, построения алгоритма более подробно будет рассказано в следующей главе.
Составление программы на языке программирования
Данный этап включает в себя:
1)выбор языка программирования;
2)уточнение способов организации данных;
3)запись алгоритма на выбранном языке программирования.
Отладка и тестирование программ
Одним из этапов решения задачи на компьютере является отладка программы. Его цель – проверка синтаксической и логической правильности программы, а также определение того, что программа функционирует на всем диапазоне допустимых данных.
В процессе отладки программы выделяются следующие этапы:
1)трансляция исходного текста программы;
2)компоновка программы;
3)выполнение программы с целью определения логических ошибок;
4)тестирование программы на контрольных примерах.
Контрольные примеры стремятся выбрать так, чтобы при работе с ними программа прошла все основные пути блок-схемы алгоритма, поскольку на каждом из путей могут быть свои ошибки.
Проведение расчетов
После тестирования и отладки происходит исполнение программы.
Производятся расчеты для различных входных параметров задачи.
Анализ данных
Полученные в результате исполнения программы данные анализируются постановщиком задачи. На основании этого анализа вырабатываются соответствующие решения, даются рекомендации. Возможно, что по итогам анализа результатов потребуется пересмотр самого подхода к постановке и
6
решению задачи и создание новых алгоритмов и программ, с учетом приобретенного опыта.
Сопрово дение программы процесс оптимизации программы после ее сдачи в эксплуатацию. В программу вносятся изменения для того, чтобы исправить обнаруженные в процессе использования дефекты и недоработки,
добавить новые функции, повысить удобство использования программного обеспечения.
Трансляция: компиляция и интерпретация
Любая ЭВМ может выполнять только программы на языке машинных кодов. Поэтому текст программы на алгоритмическом языке должен быть переведен на язык машинных кодов. Процесс равносильного преобразования алгоритма, заданного на языке программирования, в алгоритм на машинном языке называется трансляцией. Перевод программ на машинный язык осуществляют специальные программы.
Трансляторы – это специальные программы, которые переводят программы, написанные на языке высокого уровня, на язык машинных кодов.
Причем для каждого алгоритмического языка предназначен свой транслятор.
Транслятор выполняет следующие основные функции:
1)производит синтаксический анализ исходного текста программы. При этом выводятся сообщения о синтаксических ошибках в тексте программы на алгоритмическом языке (например, недопустимые символы в операторах, недопустимые операторы или отсутствие знаков препинания и др.);
2)производит непосредственную трансляцию исходной программы на язык машинных кодов;
3)распределяет память для полученной программы.
Существуют три вида трансляторов: ассемблеры, интерпретаторы,
компиляторы.
7
Ассемблеры переводят программу, записанную на языке ассемблера, в
программу на машинном языке.
Интерпретатор это транслятор, который осуществляет пооператорное выполнение программы. Интерпретация – такой пошаговый процесс, когда каждая команда переводится в машинный код и тут же выполняется, после чего эта процедура совершается над следующей командой. В случае ошибки эту команду можно исправить и продолжить интерпретацию. Такой способ медленный, но зато гибкий, так как обнаруженную ошибку можно исправить немедленно. К концу интерпретации программа готова к работе.
Компиляторами называются трансляторы, которые преобразуют всю программу в модуль на машинном языке и формируют загрузочный файл.
Компиляция – процесс, при котором в машинный код переводится вся программа полностью. При этом формируется файл программы, который может быть запущен на выполнение (загрузочный файл). Откомпилированная программа выполняется намного быстрее, но при наличии ошибок каждый раз после исправления программы весь процесс будет повторяться сначала.
Еще одно отличие – файл откомпилированной программы уже готов к выполнению и программа-компилятор во время выполнения алгоритма не нужна, в то время как интерпретируемые программы требуют постоянного присутствия программы-интерпретатора в оперативной памяти ЭВМ во время решения задачи. Каждый из подходов (компиляция и интерпретация) имеет свои достоинства. В настоящее время для большинства алгоритмических языков созданы и компиляторы, и интерпретаторы, и часто в реальных системах программирования перемешаны технологии интерпретации и компиляции. При отладке программ на всех языках высокого уровня можно использовать режим интерпретации.
8
Контрольные вопросы к главе 1
1.И компилятор, и интерпретатор в системах программирования выполняют следующее действие:
A.выполняют программу с тестовыми наборами данных
B.проверяют синтаксис программ
C.проверяют логическую правильность алгоритма
D.создают загрузочный модуль
2.После этапа «Анализ результатов» решения задачи на компьютере наступает этап…
A.«Разработка алгоритма»
B.«Тестирование и отладка»
C.«Сопровождение программы»
D.«Анализ задачи и моделирование»
E.«Постановка задачи»
3.Преобразование всей программы, представленной на одном из языков программирования, в машинные коды называется…
A.генерацией кода
B.интерпретацией
C.компиляцией
D.деструкцией
4.Понятия «компилятор» и «интерпретатор» объединены общим понятием…
A.отладчик
B.загрузчик
C.текстовый процессор
D.транслятор
E.визуализатор
5.При решении задачи на компьютере на этапе отладки программы не выполняется
A.запись алгоритма на языке программирования
B.трансляция исходного текста программы
9
C.тестирование программы на конкретных примерах
D.компоновка программы
E.отыскание логических ошибок
6.Один из этапов решения задачи на компьютере – этап программирования включает в себя…
A.проверку синтаксической правильности программы
B.проверку логической правильности программы
C.постановку задачи
D.уточнение способов организации данных
E.построение математической модели
7.Компиляция и интерпретация представляют собой…
A.два синонима для обозначения процесса перевода программного кода с языка программирования в машинный код
B.два принципиально различных метода трансляции
C.два синонима для обозначения процесса построчного анализа
D.два этапа загрузки операционной системы и выполнения программного кода
E.два различных уровня написания программ
8.Режим интерпретации в системах программирования используется…
A.при сопровождении программного обеспечения
B.при отладке программ на языке высокого уровня
C.при разработке алгоритма решения задачи
D.на этапе анализа результатов
E.на этапе создания математической модели
9.При решении задачи на компьютере на этапе программирования не выполняется…
A.постановка задачи
B.выбор языка программирования
C.уточнение способов организации данных
D.запись алгоритма на языке программирования