- •Оглавление
- •Раздел 1. Введение в информатику 6
- •Глава 1. О науке Информатика. Понятие и представление информации. 6
- •Глава 6. Прикладные системы на персональных компьютерах 83
- •Предисловие
- •Раздел 1. Введение в информатику Глава 1. О науке Информатика. Понятие и представление информации.
- •1.1. Наука информатика
- •1.2. Понятие информации
- •1.3. Представление информации в эвм
- •1.4. Операции с двоичными числами
- •1.5. Кодирование данных
- •Контрольные вопросы:
- •Раздел 2. Технические средства информатики Глава 2. Общие сведения об эвм
- •2.1. Из истории развития эвм
- •2.2. Структура эвм
- •2.3. Особенности и классы современных эвм
- •Некоторые особенности современных эвм
- •Типы персональных компьютеров
- •2.4. Суперэвм
- •2.5. Персональные компьютеры
- •Состав персональных компьютеров
- •Устройства ввода-вывода
- •Внешние устройства для пк
- •Контрольные вопросы:
- •Глава 3. Общие сведения о вычислительных компьютерных сетях
- •3.1. Классификация и топология компьютерных сетей
- •3.2. Технические средства для передачи информации в сети
- •Новые технологии беспроводной связи
- •Параметры качества коммуникационной сети
- •Единицы измерения
- •3.3. Организация локальных сетей
- •3.4. Организация глобальных сетей
- •3.5. Глобальная сеть интернет
- •Протоколы и услуги в Интернет
- •Система адресации в Интернет
- •3.6. Организация корпоративных сетей
- •Контрольные вопросы:
- •Раздел 3. Программные средства информатики Глава 4. Классификация и обзор программных средств эвм
- •4.1. Классификация программных средств
- •4.2. Краткий обзор программных средств
- •Контрольные вопросы:
- •Глава 5. Системные программы
- •5.1. Операционные системы
- •Характеристики ос
- •Файловая система
- •Драйверы устройств
- •Интерпретатор действий пользователя
- •5.2. Файловая система
- •5.3. Организация файловых систем
- •5 Этап -
- •5.4. Краткий обзор семейств ос ос семейства unix
- •Ос семейства ms dos
- •Ос семейства Windows
- •Виртуальные машины и многозадачность
- •5.5. Служебные программы
- •5.5.1. Диспетчеры файлов (файловые менеджеры)
- •5.5.2. Средства сжатия данных
- •5.5.3. Антивирусные программы
- •5.5.4. Средства обеспечения компьютерной безопасности и общие сведения о методах защиты
- •Контрольные вопросы:
- •Глава 6. Прикладные системы на персональных компьютерах
- •6.1. Проблемно-ориентированные программы
- •6.2. Прикладные системы общего назначения
- •6.3. Интегрированные прикладные системы
- •Контрольные вопросы:
- •6.4. Современные офисные пакеты. Пакет ms Office.
- •Контрольные вопросы:
- •6.5. Прикладные системы подготовки текстов
- •Основные характеристики текстовых процессоров
- •6.5.1. Текстовый процессор ms Word
- •Контрольные вопросы:
- •6.6. Электронные таблицы
- •6.6.1. Электронная таблица ms Excel
- •Представление данных в ячейках таблицы
- •Создание и обработка эт
- •Основные приемы работы в эт
- •Построение диаграмм в эт
- •Средства анализа данных в эт Excel
- •Основные встроенные функции
- •Финансовый анализ
- •Статистический анализ
- •Анализ "что-если"
- •Контрольные вопросы:
- •6.7. Базы данных (бд)
- •6.7.1. Реляционные модели
- •6.7.2. Введение в системы управления базами данных (субд)
- •6.7.3. Субд ms access
- •Контрольные вопросы:
- •Раздел 4. Алгоритмические средства информатики Глава 7. Введение в моделирование
- •7.1. Классификации моделей и моделирования
- •7.2. Математические модели
- •7.3. Информационные модели
- •Контрольные вопросы:
- •Глава 8. Понятие алгоритма
- •Результативность
- •Массовость (универсальность)
- •Понятность
- •Эффективность
- •8.1. Средства записи алгоритма
- •Конечность (дискретность)
- •Определенность (точность)
- •Словесная запись алгоритма
- •Псевдокоды
- •Структурные схемы алгоритмов
- •8.2. Языки программирования
- •8.2.1. Среда программирования
- •8.2.2. Технологии программирования
- •8.2.3. Основные методы разработки программ
- •Контрольные вопросы:
- •Глава 9. Язык программирования vba
- •9.1. Основные понятия языка программирования vba
- •9.2. Типы данных vba
- •9.3. Объявление переменных и констант
- •9.4. Объявление массивов
- •9.5. Операторы vba
- •Контрольные вопросы:
- •Заключение
- •Список литературы
9.4. Объявление массивов
Массив – совокупность однотипных переменных с одним именем, каждая из которых называется элементом массива и имеет свой номер (индекс). Массив имеет размерность и длину (размер) по каждой размерности.
Размерность массива – это количество измерений или индексов. Массивы могут быть: одномерные (для нумерации элементов используется один индекс), двумерные (для нумерации элементов используются два индекса: номер строки, номер столбца) и N-мерные. Число измерений может достигать 60.
Массивы подразделяются на статические и динамические.
Статические массивы
Статическим называется массив с заранее известным количеством элементов.
Синтаксис описания (объявления) статического массива:
Dim Имя массива (верхняя граница) As Тип
В описании массива необходимо указывать верхнюю границу массива. В случае объявления многомерных массивов после имени в круглых скобках указывается список верхних границ по каждой размерности массива:
Исторически сложилось так, что в Бейсике нижняя граница была фиксирована и равна 0. Поэтому в VBA разрешено задавать нижнюю и верхнюю границу, причем и та и другая могут быть выражениями при одном ограничении - это должны быть константные выражения, не содержащие переменных.
Синтаксически каждое измерение в списке отделяется запятой и определяется заданием нижней и верхней границы изменения индексов.
Синтаксис описания (объявления) статического массива с граничными парами:
Dim Имя массива (Нижняя граница To Верхняя граница) As Тип
Динамические массивы
Динамическим называется массив, размер которого определяется в ходе выполнения программы.
Синтаксис описания динамического массива:
Dim Имя массива () As Тип
Размер массива устанавливается с помощью оператора ReDim:
ReDim Имя массива (размер по каждой размерности)
Рассмотрим пример. На уровне модуля объявим глобальный динамический массив Vector:
'Объявление динамического массива
Public Vector() As Integer
В момент объявления размер динамического массива не указывается, соответственно не выделяется память. Все это произойдет позже, в процессе выполнения программы.
Ниже указывается фрагмент одной из возможных программ, работающих с массивом Vector. Его размер в момент работы с ним определяется в диалоге с пользователем.
9.5. Операторы vba
VBA — операторный язык. Это значит, что его программы (процедуры или функции) представляют последовательности операторов.
В языке VBA можно выделить следующие группы операторов:
декларативные операторы, предназначенные для описания объектов, с которыми работает программа (типов переменных, констант и массивов и др.),
операторы-комментарии,
операторы присваивания и изменения значений объектов,
операторы, управляющие ходом вычислений (условный, циклический, перехода).
В данном курсе будут рассмотрены основные операторы, причем некоторые, например, циклические, будут представлены трех видов, но студентами должен быть освоен только один, как наиболее понятный для применения.
Оператор комментария
Комментарии на исполнение программы не влияют, но необходимы для понимания алгоритма. Поскольку программы неоднократно модернизируются, необходимо использовать комментарии, чтобы вспомнить алгоритм и правильно изменить его.
Любая строка текста программы может заканчиваться комментарием. Комментарий в VBA начинается апострофом (') и включает любой текст, расположенный правее в строке.
Например,
weight= weight+z 'Увеличение веса
value=weight*price 'Новая стоимость
Оператор присваивания
Операторы присваивания — основное средство изменения состояния программы (значений переменных). Он представляет собой конструкцию, связывающую знаком = переменную (левая часть) и выражение (правая часть).
Выражение состоит из операндов (имен переменных, констант, имен стандартных функций) и знаков операций (арифметических, логических, строковых, сравнения).
Смысл этого оператора состоит в том, что левой части присваивается значение правой части.
Управляющие операторы
Набор управляющих операторов VBA соответствует структурированному языку программирования. В этот набор входят условные операторы и операторы цикла, что позволяет организовать процесс вычислений надежно и эффективно.
Условный оператор If Then Else End If
Это общепринятый в языках программирования оператор управления вычислениями позволяет выбирать и выполнять действия в зависимости от истинности некоторого условия.
Синтаксис
If условие Then операторы1 Else операторы2 End If
Здесь условие обязательно и может быть числовым или строковым выражением со значениями True или False (Null трактуется как False). Операторы1 и операторы2 — это последовательности из одного или нескольких разделенных двоеточием операторов. Закрывающий оператор End If необходим.
Семантика
Если условие истинно (True), выполняется последовательность «операторы1», ложно (False) – «операторы2».
Операторы цикла
Циклы используются для организации повторного выполнения блоков кода. Любой цикл состоит из двух частей: условие цикла и тело цикла. У любого цикла есть параметр. Параметр цикла – это переменная, которая изменяется в теле цикла, а также участвует в условии его окончания.
Цикл For Next
Позволяет повторять группу операторов заданное число раз.
Синтаксис оператора Цикла по счетчику
For счетчик_цикла = начало To конец Step шаг
тело цикла
Next счетчик_цикла
Семантика
Здесь счетчик_цикла – это числовая переменная. В начале выполнения цикла она принимает значение, задаваемое числовым выражением «начало».
Числовое выражение «конец» задает заключительное значение счетчика цикла. Оно вычисляется до начала исполнения тела цикла и не меняется, даже если входящие в него переменные изменяют в теле цикла свои значения. Числовое выражение шаг необязательно (по умолчанию он равен 1). Его значение также вычисляется в начале цикла и прибавляется к счетчику цикла всякий раз, когда завершается выполнение тела цикла и вычисление достигает строки Next счетчик_цикла.
Тело цикла — это последовательность операторов, которая будет выполнена заданное число раз. При каком значении переменной счетчик_цикла происходит завершение цикла, зависит от знака параметра шаг. Если шаг положителен, цикл завершится, когда впервые выполнится условие:
счетчик_цикла > конец
Если шаг цикла отрицателен, условие его завершения:
счетчик_цикла < конец
Это условие проверяется перед началом выполнения цикла, а затем - после каждого прибавления шага к счетчику цикла в операторе Next. Если оно выполнено, управление передается оператору, следующему за Next, в противном случае - выполняются операторы из тела цикла.
Далее приводится пример описания массива размерностью, равной 5 и заполнения его в обратном порядке значениями 5, 4, 3, 2, 1. При этом индекс массива изменяется от 5 до 1 с шагом -1, поэтому присваивание значений начинается с 5-го элемента массива.
Обратите внимание, что элементу массива присваивается значение индекса.
Dim A(1 To 5) As Integer
Dim i As Integer
For i = 5 To 1 Step -1
A(i) = i ‘i-му элементу присваивается значение i
Next i
Процедуры и функции
Процедура – это программа, которая имеет собственное имя и представляет собой некоторую последовательность операторов. Обычно программа на VBA состоит из процедур, каждая из которых решает свою задачу. Для вызова процедур используется специальный оператор Call: Call Имя процедуры (аргументы).
Синтаксис процедуры следующий:
Sub Имя (аргументы)
тело процедуры (операторы)
End Sub
Здесь Sub – обязательное ключевое слово, указывающее на начало процедуры-подпрограммы. Имя – это уникальное имя процедуры. Список аргументов (аргументы) – это необязательный параметр, который либо пуст, либо представляет перечень входных данных, передаваемых процедуре. Если в процедуре используется несколько аргументов, то они разделяются запятыми. В конце процедуры обязательно должен присутствовать End Sub.
Аргументы (параметры) процедуры – это данные, передаваемые процедуре при ее вызове и используемые ею при выполнении. Для каждого из аргументов при объявлении процедуры указывается его имя и тип данных из стандартного набора.
Sub А (b As Integer, c As String)
Параметры, указанные в скобках заголовка процедуры, называются формальными.
Передача аргументов при вызове процедуры может производиться несколькими способами: с помощью переменных, выражений, констант, символьных строк и массивов.
Параметры, указанные в скобках при вызове процедуры, называются фактическими.
Наряду с процедурами в языке VBA существуют и функции
Функция – это встроенная формула. Она отличается от процедуры тем, что возвращает единственное результирующее значение, присваиваемое имени функции.
Синтаксис функции следующий:
Function Имя (аргументы)
тело функции (операторы)
Имя=Результат
End Function
Функции используются в выражениях. В языке VBA, как и в любом языке программирования, есть множество встроенных функций, но пользователь может создавать собственные функции.
Переменные и массивы, описанные внутри функции или процедуры с помощью оператора Dim, являются локальными и могут использоваться только в самой функции или процедуре.
В практической части данного раздела курса информатики будут создаваться пользовательские функции, а затем применяться в MS Excel.
Структура программы
Программа на VBA имеет следующую структуру:
Описательная часть
Алгоритмическая часть
Описательная часть связана с понятиями типы данных, переменные и массивы, константы. Она включает объявление переменных, массивов и констант. Это обязательная часть программы, т.к. этим обеспечивается выделение памяти описанным объектам, и определяются значения, которые можно им присваивать.
Алгоритмическая часть связана с понятиями операторы, процедуры и функции. Она включает непосредственно алгоритм, записанный с помощью операторов языка: присваивания, условия, цикла и ввода-вывода.
Более подробное описание языка программирования VBA можно прочитать в учебном пособии «Основы программирования на языке высокого уровня VBA (Visual Basic for Applications)» [2].
