- •В.Н.Агеев
- •А23 Программирование и основы алгоритмизации. Конспект лекций – м.: мгуп, 2012.– *** с.
- •Содержание
- •Предисловие
- •1. Понятие алгоритма в информатике. Блок-схемы алгоритмов
- •2. Типовые алгоритмы и их блок-схемы.
- •3. Алгоритмические языки и их классификация
- •Языки программи- рования
- •4. Методы объектно-ориентированного программирования
- •5. Интегрированная среда разработки Visual Basic
- •6. Программирование на языке Visual Basic
- •7. Программирование разветвляющихся процессов
- •If условие Then Оператор1 [ Else Оператор2]
- •8. Программирование циклических процессов
- •9. Графические возможности языка Visual Basic
- •10. Функции даты и времени. Объект Timer
- •11. Работа с внешними файлами и устройствами
- •Input # номер, имя_переменной
- •12. Работа с дисками и папками
- •CommonDialog1.ShowOpen
- •Open CommonDialog.FileName For Input As # 1
- •13. Работа с базой данных
- •14. Типы ошибок и методы отладки программ.
- •1. Синтаксические ошибки.
- •2. Ошибки в структуре программы.
- •3. Ошибки, возникающие во время выполнения программы.
- •4. Логические ошибки или ошибки алгоритма.
- •15. Примеры проектов
6. Программирование на языке Visual Basic
В объектно-ориентированных языках программирования и, в частности, в языке Visual Basic, переменные играют такую же важную роль, как и в алгоритмических языках программирования. Переменные предназначены для хранения и обработки данных в программах.
Переменные задаются именами, которые определяют области памяти, в которых хранятся их значения. Значениями переменных могут быть данные различных типов (целые или вещественные числа, последовательности символов, логические значения и т.д.).
Тип переменных определяется типом данных, которые могут быть значениями переменных. Значениями переменных числовых типов (Byte, Integer, Long, Single, Double) являются числа, логических (Boolean) — True или False, строковых (String) — последовательности символов и т.д. Обозначения типов переменных являются ключевыми словами языка и поэтому выделяются.
Различные типы данных требуют для своего хранения в оперативной памяти компьютера различное количество ячеек (cм. табл.3). Так, для хранения целых чисел в интервале от 0 до 255 в переменных типа Byte достаточно одной ячейки памяти (одного байта), для хранения вещественного числа с двойной точностью в переменных типа Double требуется уже восемь ячеек (восемь байт), а для хранения символьных строк в переменных типа String требуется одна ячейка на каждый символ.
Имя каждой переменной уникально и не может меняться в процессе выполнения программы. Имя переменной может состоять из различных символов (латинские и русские буквы, цифры и т.д.), но должно обязательно начинаться с буквы и не должно включать знак точка «.». Количество символов в имени не может быть более 255.
Например, числовую переменную можно назвать А или Число, а текстовую — А или Строка. Однако разработчик языка Visual Basic фирма Microsoft рекомендует для большей понятности текстов программ для программиста в имена переменных включать особую приставку, которая обозначает тип переменных. Тогда, например, имена целочисленных переменных целесообразно записать как intА или intЧисло, а текстовых — strA и strСтрока.
Таблица 3. Типы переменных
Тип данных |
Возможные значения |
Объем занимаемой памяти |
Приставка к имени |
Byte |
целые числа от 0 до 255 |
1 байт |
byt |
Integer |
целые числа от -32768 до 32767 |
2 байта |
int |
Long |
целые числа двойной длины |
4 байта |
Ing |
Single |
Десятичные числа от 1.401298Е-35 до 3.4022823Е38 |
4 байта |
sng |
Double |
Десятичные числа двойной точности от 1.9406564584 1247Е-324 до 1. 797693 13486232Е308 |
8 байт |
dbl |
Boolean |
Логическое значение True или False |
2 байта |
bin |
String |
Строка символов |
1 байт на каждый символ |
str |
Currency |
Число в денежном формате |
8 байт |
cur |
Date |
Дата от 1 января 1 00 г. до 31 декабря 9999г. |
8 байт |
dtm |
Object |
Ссылки на любой объект |
4 байга |
obj |
Variant |
Любые значения |
> 16 байт |
vnt |
Наборы однотипных переменных могут быть объединены в массивы, объединенные одним именем. Массивы бывают одномерные, которые можно представить в форме одномерной таблицы, и двумерные, которые можно представить в форме двумерной таблицы. Массивы могут быть различных типов: числовые, строковые и т.д.
Массив состоит из пронумерованной последовательности элементов. Номера в этой последовательности называются индексом. Каждый из этих элементов является переменной, т.е. обладает именем и значением, и поэтому массив можно назвать переменной с индексом.
Простейшим способом задания типа переменной (ее объявления) является приписывание к имени переменной определенного суффикса. Например, числовую переменную типа Integer можно задать как А%, а текстовую переменную String как А$.
Для объявления типа переменной можно воспользоваться также оператором определения переменной. Синтаксис (правило записи) этого оператора следующий:
Dim ИмяПеременной [.As ТипПеременной]
Здесь Dim и As ключевые слова языка Visual Basic и поэтому они выделяются жирным шрифтом. Назначение этого оператора — объявить переменную, т.е. задать ее имя и тип, однако объявление типа может отсутствовать. С помощью одного оператора можно объявить сразу несколько переменных, например:
Dim ИмяПеременной As Integer, ИмяПеременной As String
Объявление массива производится аналогично объявлению переменных, необходимо только дополнительно указать диапазон изменения индекса. Например, объявление строкового массива, содержащего 33 элемента, производится следующим образом:
Dim ИмяМассива ( 1 To 33) As String
Переменные, значения которых не меняются в процессе выполнения программы, называются константами. Синтаксис объявления констант следующий:
Const ИмяКонстанты [As Тип]= ЗначениеКонстанты
Квадратные скобки здесь означают, что тип указывать не обязательно.
Переменная может получить или изменить значение с помощью оператора присваивания. Синтаксис этого оператора следующий:
ИмяПеременной = Выражение
При выполнении оператора присваивания переменная, имя которой указано слева от знака равенства, получает значение, равное значению выражения (арифметического, строкового или логического), которое находится справа от знака равенства.
Понятие функции в языках программирования близко к понятию функции в математике. Функция может иметь один или более аргументов, если функция имеет один аргумент, то тогда она является функцией одного аргумента. Синтаксис записи функции нескольких аргументов следующий (аргументы в списке отделяются друг от друга запятыми):
ИмяФункции (Список аргументов)
Для каждого набора аргументов можно определить значение функции. В программировании говорят, что функция возвращает свое значение, если задано значение ее аргументов. Функции обычно входят в состав выражений, значения которых присваивается переменным.
Функции могут быть различных типов: математические, строковые, финансовые, даты и др. Тип функции определяется возможными значениями аргументов и функции.
В математических функциях значениями как аргументов, так и функций являются числа. Всего в языке Visual Basic имеется 12 математических функций:
Таблица 4. Математические функции
-
Функция
Возвращаемое значение
Sin(A)
синус числа А
Cos (A)
косинус числа А
Tan (A)
тангенс числа А
Atn(A)
арктангенс числа А
Sqr (A)
квадратный корень из числа А
Log (A)
логарифм числа А
Ехр(А)
показательная функция числа А
Int(A)
наибольшее целое число, не превышающее число А
Clnt(A)
целое число, ближайшее к числу А
Fix (A)
целое число, равное числу А без дробной части
Abs (A)
абсолютное значение числа А
Rnd
случайное число в интервале (0, 1)
Эти функции можно использовать при записи арифметических выражений, которых помимо функций могут присутствовать переменные и константы, связанные знаками арифметических операций сложения «+», вычитания «–», умножения «*», деления «/», возведения в степень «^». Порядок действий можно изменять с помощью скобок по обычным правилам арифметики.
Например, переменной Y нужно присвоить значение функции (x 2 + 5x –1) e –2x. Оператор присваивания будет иметь вид
Y = (X^2 + 5*X – 1) * Exp( –2*X)
В строковых функциях строками являются либо аргументы, либо возвращаемые функциями значения.
Таблица 5. Строковые функции
-
Функция
Возвращаемое значение
Len(S)
количество символов в строке
Left (S, N)
первые N символов строки S
Mid(S,K,N)
N символов строки S, начиная с K-го символа
Val(S)
преобразование числа в виде строки S в числовой формат
Str (N)
преобразование числа N в строку символов
Asc(C)
ASCII – код символа С
Chr(N)
символ, ASCII – код которого равен N