основной язык програмирования. Основы языка программирования. Программа последовательность инструкций и комментариев, реализующая алгоритм решения задачи
Скачать 1.03 Mb.
|
Основы языка программирования Visual basic for Application (VBA) Этапы решения задач • постановка задачи: – математическая модель задачи; – определение состава и характера исходных данных; – определение искомых результатов. • разработка алгоритма решения задачи: – Алгоритм – это последовательность операций и связей между ними, однозначно приводящая исходные данные к искомому результату при изменении исходных данных. • Алгоритм должен обладать следующими основными свойствами: – Определенностью: алгоритм должен быть представлен в такой форме, чтобы он однозначно понимался любым пользователем и любые исполнители выполняли бы его совершенно одинаково; – массовостью, т. е. пригодностью для решения различных вариантов данной задачи (класса задач); – результативностью, т. е. свойством приводить к получению искомого результата за конечное число шагов. В противном случае необходимо выдать сообщение о неприменимости исходных данных для данного алгоритма. • составление программы на алгоритмическом языке – Программа – последовательность инструкций и комментариев, реализующая алгоритм решения задачи. – Инструкция – действие, производимое над данными. • тестирование программы • отладка программы Основные понятия и определения VBA • Инструкция (оператор) может включать в себя: ключевые слова, символические имена (идентификаторы), переменные, константы, функции и выражения. • Ключевые слова – это слово или символ, распознаваемые как элемент языка программирования. Например, If, For, End, Sub, Else и др. Ключевые слова нельзя использовать в качестве имен объектов программы. • Переменная – объект программы, который может изменять свое значение при выполнении программы. • Константа – это объект программы, сохраняющий постоянное значение в течение выполнения программы. • Идентификатор – это символическое имя, используемое для именования объектов программы (процедур, функций, переменных, констант). При именовании необходимо придерживаться следующих правил: – Длина имен не должна превышать 256 символов. – В имени можно использовать любую комбинацию букв, цифр и символов, но оно всегда должно начинаться с буквы. – Имена не должны включать точек, пробелов и следующих символов: % & ! # @ $ . – Имена должны быть уникальны внутри области, в которой они определены. • Функции — это программные единицы, которые выполняют вычисления по заранее определенным алгоритмам и имеют свои уникальные имена. • Выражение – это комбинация ключевых слов, операторов, переменных и констант, результатом которой является строка, число или логическое значение. • Операндом называется объект программы, над которым производится операция. Все обрабатываемые программой операнды, например, значения переменных и констант, являются данными. • Выражением называется последовательность операндов, соединенных знаками операций. В зависимости от полученного результата выражения подразделяются на – арифметические – логические – строковые Типы данных VBA Типы данных Размер (байт) Описание Диапазон значений Byte 1 Целое число От 0 до 255 Integer 2 Целое число От -32768 до +32767 Long 4 Длинное целое число От –2147483648 до +2147483647 Типы данных VBA Типы данных Размер (байт) Описание Диапазон значений Single 4 Действительное число обычной точности От –3,4Е+38 до –1,4Е–45 для отрицательных чисел; от 1,4Е–45 до 3,4Е+38 для положительных чисел Double 8 Действительное число двойной точности От –1,79Е+308 до –4,9Е–324 для отрицательных чисел; от 4,94Е–324 до 1,79Е+308 для положительных чисел Типы данных VBA Типы данных Размер (байт) Описание Диапазон значений Boolean 2 Логический True (истина) или False (ложь) String 10 + длина строки Строковый От 0 до символов Variant 16 Данные любого типа Любое числовое или строковое значение Объявление переменных Объявление переменных в программе осуществляется с помощью оператора Dim (dimension – размерность): Dim <имя1> As <тип> ,<имя2> As <тип>, … где <имя> – идентификатор переменной, <тип> – тип данных. С помощью одной инструкции Dim можно объявить несколько переменных. Для каждой переменной следует указывать свой тип, даже если он совпадает с предыдущим. В противном случае, если тип не назначен, то переменной присваивается тип Variant. Например: Dim a, b As Integer В данном примере переменной a присвоен тип Variant, а переменной b назначен тип Integer. Если же требуется назначить переменным a, b тип Integer, то необходимо использовать следующее описание: Dim a As Integer, b As Integer Тип Variant почему обязательно нужно объявлять тип переменной: • Рациональное использование опративной памяти Ни один тип данных не требует 16 байт для сохранения значения переменной. • VBA по-разному обрабатывает данные разных типов. не объявляя тип данных, можно получить результат, отличающийся от ожидаемого. Объявление констант Константы – объекты программы, значения которых нельзя изменять в процессе вычислений. Объявление констант в программе осуществляется с помощью оператора Const: Const <имя> As <тип> = <значение> *,<имя> As <тип> = <значение>, …+, где <имя> – идентификатор константы, <тип> – тип константы, <значение> – числовое значение. Пример объявления константы : Const pi As Single=3.14159 Выражения Арифметические выражения Арифметическим выражением называется последовательность операндов числового типа, соединенная знаками арифметических операций. В качестве операндов можно использовать: константы, пе-ременные, функции, выражения в круглых скобках. Результатом вычисления арифметического выражения всегда является число. Операция Описание Пример Результат + Сложение 3+2 5 – Вычитание 3–2 1 * Умножение 3*2 6 / Деление 3 / 2 1,5 ^ Возведение в степень 3^2 9 \ Целочисленное деление 5\2 2 mod Остаток от деления нацело 5 mod 2 1 Приоритет операций При вычислении арифметических выражений операции выполняются в строгом порядке: 1. выражения в круглых скобках; 2. вычисление функций; 3. возведение в степень (^); 4. смена знака (–а); 5. умножение (*) и деление (/); 6. целочисленное деление (\); 7. остаток от деления нацело (mod); 8. сложение (+) и вычитание (–). При записи арифметических выражений на VBA необходимо помнить следующие правила: – выражение записывается слева направо в одну строку; – знаки операций пропускать нельзя; – для изменения порядка выполнения операций при вычислении выражений используются круглые скобки; – при использовании действительного числа целая и дробная части отделяются точкой (.). Математические функции Abs - модуль числа Atn - арктангенс числа Cos - косинус угла Exp - основание натурального логарифма, возведенное в степень Int, Fix - целая часть числа • Функции Int и Fix удаляют дробную часть элемента число и возвращают результирующее целочисленное значение. • Разница между int и Fix состоит в том, что если число отрицательно, то int возвращает первое отрицательное целое число, меньшее или равное числу, а Fix возвращает первое отрицательное целое число, большее или равное числу. Например, функция Int преобразует –8,4 в –9, а Fix преобразует –8,4 в –8. Log - натуральный логарифм числа Rnd - случайное число из диапазона [0; 1). Оператор Randomize инициализирует генератор случайных чисел с начальным значением на основе системного таймера. Для получения случайных целых чисел в данном диапазоне, используйте следующую формулу: Int((B - A + 1) * Rnd + A) Здесь B представляет собой большее число в диапазоне, а A —меньшее. Sgn – знак числа Sin – синус угла Sqr – квадратный корень числа Tan – тангенс угла Примеры арифметических выражений Математическая запись Запись на языке VBA n m x X^(m/n) x Sqr(Abs(x)) e Exp(1) 3 2 n e 2*Exp(n^3) 5 4 3 19/5 или 3+4/5 x Cos n Cos(x)^n n x Sin Sin(x^n) x lg Log(x)/Log(10) x ln tg Tan(Log(Abs(x))) m n x Sin Sin(x^m)^n Логические выражения Логическим выражением (высказыванием) называется последовательность операндов логического типа, соединенная знаками логических операций. В качестве операндов можно использовать: константы, переменные, функции, выражения в круглых скобках логического типа. Результатом вычисления логического выражения является значение логической константы (True или False). Математическая запись Описание Запись на VBA ¬ Логическое отрицание «не» Not Λ Логическое умножение «и» And V Логическое сложение «или» Or Исключающее или Xor ⊕ Логические операции – операция Not возвращает значение, противоположное значению операнда; – операция And возвращает значение True, если оба операнда истинны; в противном случае – False; – операция Or возвращает значение True, если хотя бы один из операндов имеет значение True; в противном случае – False; – операция Xor возвращает значение False, если оба операнда имеют одинаковые значения; в противном случае – True. Операнды Результаты операций A B Not A Not B A And B A Or B A Xor B 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 0 0 1 1 0 0 0 Ввод данных Функция InputBox Используется для ввода данных в программу. InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context]) Отображает диалоговое окно с заголовком title и приглашением-подсказкой prompt и ожидает ввода данных пользователем с клавиатуры. Результат работы функции – данные, введенные пользователем. Default – необязательный параметр, в котором можно указать значение по умолчанию. Тип возвращаемого результата –string. ! Всегда используйте функцию InputBox в составе оператора присваивания. Пример: X= InputBox(“х=”) X= InputBox(“Введите значение для х”, ”Ввод х”, 5) Функция вывода. Функция Msgbox MsgBox(prompt[, buttons] [, title] [, helpfile, context]) Отображает диалоговое окно с сообщением prompt и ожидает, пока пользователь щелкнет по какой-либо кнопке. Buttons – перечисляются кнопки, которые должны присутствовать в диалоговом окне. Title – заголовок окна. Эту функцию можно использовать вне выражения и, не заключая аргументы в круглые скобки. Например: MsgBox x MsgBox “Значение переменной x = ” & x MsgBox "Значение переменной x = " & x, , "Вывод значения" |