Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы на вопросы с 12-35.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
101.99 Кб
Скачать

Структура программного кода

Основой программ на VBA являются процедуры и функции, состоящие из инструкций, которые выполняют необходимые действия и вычисления. Каждая процедура имеет имя, по которому она вызывается на выполнение.

Порядок записи процедур и функций безразличен, однако должен существовать главный объект, с которого начинается выполнение программы. В большинстве случаев таким объектом является процедура Main().

Программы на языке Visual Basic в среде Access хранятся в модулях. Mодуль является структурой, сохраняющей некоторый набор описаний и процедур, или способом организации процедур.

Модули подразделяются на стандартные и модули форм и отчетов.

Стандартные модули. Стандартные модули являются отдельными объектами Access и представлены в окне БД. В них хранятся процедуры, доступные из любых других объектов базы данных. Вызов этих процедур может осуществляться из процедур обработки событий, процедур других стандартных модулей, макросов и просто из выражений. Модули форм и отчетов. Любая форма и любой отчет базы данных содержит встроенный модуль. Модуль формы или отчета создается автоматически при создании формы или отчета и является частью их описания. Модуль существует пока существует форма или отчет, копируется и удаляется вместе с ними. Процедуры модулей связываются с событиями этих объектов.

Операторы:

1. Оператор присваивания

Присваивание значений переменным осуществляется с помощью оператора присваивания. В этом операторе слева стоит имя переменной, а справа присваиваемое значение или выражение. 

2. Оператор ветвления

Оператор ветвления предназначен для изменения порядка выполнения программы по некоторому условию. Оператор работает следующим образом: если (If) выполняется <условие 1>, то (Then) будет выполнена последовательность операторов <Блок 1>, иначе, если (ElseIf) выполняется <условие 2>, то будет выполнен <Блок 2> и т.д., иначе (Else) - <Блок N> .

3. Оператор цикла For . . . Next

Синтаксис:

For <i>=<i0> To <iN> [Step <ih>] <Блок> Next [<i>]

Значения <i>, <i0>, <iN>, <ih> соответственно означают:

  • <i> - параметр цикла;

  • <i0>, <iN> - начальное и конечное значения параметра цикла;

  • <ih> - шаг изменения параметра цикла.

Обычно перечисленные величины являются целыми числовыми. Если шаг не указан, то он по умолчанию принимается равным 1.

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

Цикл Do с предусловием

Синтаксис:

Do [While|Until] <условие> <Блок> Loop

Если выбрано служебное слово While, то цикл продолжается, пока выполняется условие; если Until – то прекращается, когда условие выполняется.

Цикл Do с постусловием

Синтаксис:

Do <Блок> Loop [{While|Until}] <условие>

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

В обоих циклах Do для досрочного выхода из цикла используется команда Exit Do.

4.Операторы ввода-вывода

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

В Visual Basic возможны несколько способов ввода данных в программу. Одним из самых простых является использование функции InputBox, имеющей следующий синтаксис:

InputBox("<Текст подсказки>")

21. Программирование на Visual Basic. Переменные. Константы. Процедуры.

1 вариант

Переменные

 

Переменные предназначены для хранения и обработки данных.

В объектно-ориентированных языках программирования, и в частности в языке Visual Basic, переменные играют такую же важнейшую роль, как и в процедурных языках программирования.

Переменные задаются именами, определяющими области памяти, в которых хранятся значения переменных. Значениями переменных могут быть данные различных типов (целые или вещественные числа, последовательности символов, логические значения и так далее).

 

Тип переменной

Тип переменной определяется типом данных, которые могут быть значениями переменной. Значениями переменных числовых типов (Byte, Integer, Long, Single, Double) являются числа, логических (Boolean) — True или False, строковых (String) — последовательности символов и так далее. Обозначения типов переменных являются ключевыми словами языка и поэтому выделяются.

Над различными типами данных (различными типами переменных) допустимы различные операции. Над числовыми переменными возможны арифметические операции, над логическими переменными — логические операции, над строковыми — операции преобразования символьных строк и так далее.

Различные типы данных требуют для своего хранения в оперативной памяти компьютера различное количество ячеек (байтов). Для хранения целых чисел в интервале от 0 до 255 в переменных типа Byte достаточно одного байта; для хранения вещественного числа с двойной точностью в переменных типа Double требуется уже восемь байтов, а для хранения символьных строк в переменных типа String требуется один байт на каждый символ.

  

Тип переменной

Возможные значения

Объем занимаемой памяти

Приставка к имени

Byte 

Целые числа от 0 до 255 

1 байт 

byt 

Integer 

Целые числа от -32768 до 32767 

2 байта 

int 

Long 

Целые числа двойной длины 

4 байта 

Ing 

Single0

 

Десятичные числа одинарной точности от1,401298Е-35 доЗ,4022823Е38

4 байта

sng

Double

 

Десятичные числа двойной точности от 1,94065645841247Е-324 до 1,79769313486232Е+3080 

8 байтов

 

dbl

 

Boolean 

Логическое значение True или False 

2 байта 

bin 

String

 

Строка символов

 

1 байт на каждый символ 

str

 

Currency 

Число в денежном формате 

8 байтов 

cur 

Date

 

Дата от 1 января 100 г. до 31 декабря 9999 г. 

8 байтов

 

dtm

 

Object 

Ссылки на любой объект 

4 байта 

obj 

Variant 

Любые значения 

≥16 байтов 

vnt 

 

Имя переменной

Имя каждой переменной (идентификатор) уникально и не может меняться в процессе выполнения программы. Имя переменной может состоять из различных символов (латинские и русские буквы, цифры и так далее), но должно обязательно начинаться с буквы и не должно включать знак «.» (точка). Количество символов в имени не может быть более 255.

Числовую переменную можно назвать, например, А или Число, а строковую — А или Строка. Однако разработчик языка Visual Basic — фирмаMicrosoft — рекомендует для большей понятности текстов программ для программиста в имена переменных включать особую приставку,которая обозначает тип переменных. Тогда имена целочисленных переменных целесообразно записывать как intA, а строковых — strA.

 

Объявление типа переменной

Для объявления типа переменной используется оператор определения переменной. Синтаксис этого оператора следующий:

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

 

С помощью одного оператора можно объявить сразу несколько переменных, например:

Dim  intЧисло As Integer, strСтрока As String

 

Присваивание переменным значений

Переменная может получить или изменить значение с помощью оператора присваивания. Синтаксис этого оператора следующий:

 ИмяПеременной = Выражение 

При выполнении оператора присваивания переменная, имя которой указано слева от знака равенства, получает значение, равное значению выражения (арифметического, строкового или логического), которое находится справа от знака равенства.

 

Константы

 

Константы (постоянные величины) - величины, значения которых не изменяются в процессе выполнения программы. Примеры констант:

675.342 - числовая

7.045Е+6 - числовая, равна 7,045*106 = 7045000

6.6Е-23 - числовая, равна 6,6*10 -23

"Это текст" или "2+2" или "44" - любая величина, текст или число в кавычках - это текс (символьная величина).

#8/12/2008# - константа типа дата.

True или False - логические константы.

 

Синтаксис объявления констант следующий:

 Const ИмяКонстанты [As Тип]= ЗначениеКонстанты

Массивы

 

Массив - это набор переменных с одним именем и с разными индексами.

Массивы бывают: одномерные - таблица состоящая из одной строки; и двумерные - таблица состоящая из строки и столбца.

Массивы могут быть различных типов: числовые, строковые и так далее.

Обозначается массив следующим образом:

 ИмяМассива(Индекс)

 

Индексы являются целыми числами (в данном случае от 1 до 33). Обращение к элементу массива производится по имени элемента, состоящему из имени массива и значения индекса, например strA (5).

Каждый элемент массива может принимать собственное значение. Так, значением элемента массива strA(5) является строка "д".

 

 Примеры:

для одномерного массива: Х(1), Х(2), Х(100), Х(1221), strA(5), strA(10), или, например, элементы списка ListBox обозначаются так: List(0), List(1), List(24)..

для двумерного массива: например, если имеется несколько списков ComboBox, то элементы списка ComboBox обозначаются так: Combo1.List(0), Combo1.List(1), Combo6.List(24)..

Объявление массива производится аналогично объявлению переменных, только необходимо ещё указать диапазон индексов (например, от 1 до 40 элемента, на языке VBasic обозначается так (1 То 40)).

Dim Имя элемента массива (нижний индекс Тo верхний индекс) As тип переменных массива

 

Например:     Dim Z (4 To 55) As String

 

Способы заполнения массива

 

Для начала работы с массивом необходимо его предварительно заполнить, то есть присвоить элементам массива определенные значения. Заполнение массива можно производить различными способами.

 

Заполнение с клавиатуры

 Первый способ состоит в том, что значения элементов массива вводятся пользователем с клавиатуры, например с помощью функции InputBox.

2 вариант

Константа- это область оперативной памяти в которой хранится величина не изменяющая свое значение в процессе выполнения программы Переменная- это область оперативной памяти в которой хранится величина изменяющая свое значение в процессе выполнения программы  Константы имеют имя  При присваивании переменным имени следует придерживаться следующих правил  Использовать буквы латинского и русского алфавитов регистр букв не имеет значения Длина имени не должна превышать 256 символов Можно использовать любую комбинацию букв,цифр,символов кроме точек пробелов и символов & @ ! $ % # Имена должны быть уникальны в той области в которой они определены Пропроцедуры в методичке нет ничего

22. Программирование на Visual Basic. Операторы управления порядком выполнения команд If…Then. Структура Развилка. Пример.

Оператор присвоения

Переменная=выражение

  1. if условие then оператор 1 else оператор 2

  2. if условие then оператор(ы) 1 else оператор(ы)2

  3. if условие 1 then оператор(ы)1

else if условие 2 tnen оператор(ы)2

else оператор(ы)3

end if.

23. Организация циклов. Структура Цикл. Пример Структура цикл это основная алгоритмическая структура которая используется для организации циклических вычислительных процессов. Циклический процесс- это процесс вычисления в котором производятся по одним и тем же формулам но при различных значениях параметра. Число повторений определяется значением некоторого логического выражения зависящего от управляющей переменной . Организация цикла требует введения следующий понятий: Параметр цикла Начальное значение параметра цикла Конечное значение параметра цикла  Шаг изменения параметра цикла Условное окончание цикла Например Разработать информационную технологию позволяющую вычислить значение функции у=sin(x) при изменении значения а меньше либо равно x и b больше либо равно x с шагом дельта х где а = 0 B = числу пи , дельта х равно пи/6

24. Структура Цикл в цикле. Пример.

При реализации структуры цикл в цикле вводятся следующие понятия Параметр внешнего цикла Параметр внутреннего цикла Начальное значение параметра внешнего цикла Начальное значение параметра внутреннего цикла Конечное значение параметра внешнего цикла Конечное значение параметра внутреннего цикла Шаг изменения параметра внутреннего цикла Шаг изменения параметра внешнего цикла Условие окончания внешнего цикла Условие окончания внутреннего цикла Организуется также как цикл Пример Пусть потребуется вычислить значение функции у=sinx + cosz при изменении х больше либо равно нулю и х меньше либо равно 2 где дельта х равно 0,4 а z больше либо равно 1 и меньше либо равно 2 с шагом дельта z = 0,5

  1. Производная алгоритмическая структура Накопление.

Накопление:

  1. Накопление суммы(В т.ч. счетчик)

  2. Накопление произведения

Выполняет 2 функции:

Вычисляет сумму и произведение элементов массива

  • Производная алгоритмическая структура Сумма

Служит для вычисления различ. сумм

Особенности алгоритма:

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

  2. Дополнительной переменной присваивается начальное значение, равное 0

  3. Определяется тип циклического процесса:

  • цикл с параметром, если задана размерность массива или ее можно определить перед началом процесса

  • итерационный цикл, если накопление суммы заканчивается при достижении заданной точности

  1. Телом цикла служит структура, в которой вычисляется значение искомой суммы