- •Институт информационных систем управления
- •Кандидат экономических наук, доцент в.А. Машурцев
- •Введение.
- •Глава 1. Vb 6.0 – среда разработки приложений.
- •1.1. Окна среды vb.
- •1.2. Файловая структура проекта.
- •1.3. Визуальное конструирование приложения.
- •1.4. Основные свойства формы и задание их значений.
- •1.5. Добавление форм к проекту и удаление форм из проекта.
- •1.6. Основные элементы управления и их свойства.
- •1.6.1. Элемент Label.
- •1.6.2. Элемент TextBox. Элемент TextBox (текстовое окно) предназначен для ввода исходной
- •1.6.3. Элементы HscrollBar и VscrollBar.
- •1.6.4. Элемент CommandButton.
- •1.7. События и методы.
- •1.8. Включение изображений в интерфейс пользователя.
- •1.8.1. Элемент Image. Элемент управления Image предназначен в основном для нанесе-
- •1.8.2. Элемент PictureBox.
- •1.9. Сохранение проекта.
- •Глава 2. Данные vb.
- •2.1. Типы данных.
- •2.1.1. Типы числовых данных.
- •2.1.1.1. Целочисленные данные.
- •2.1.1.2. Вещественные данные.
- •2.1.2. Типы нечисловых данных.
- •2.2. Объявление переменных и констант.
- •2.3. Область видимости переменных и констант.
- •2.4. Совместимость и преобразование типов данных.
- •2.5. Ввод исходных данных и вывод результатов обработки.
- •2.5.1. Окно сообщений. Оператор и функция MsgBox.
- •2.6. Форматирование вывода чисел.
- •Глава 3. Алгоритмизация вычислительных процессов.
- •3.1. Алгоритм и его свойства.
- •3.2. Типы вычислительных процессов.
- •3.3. Операторы vb.
- •3.4. Логические выражения.
- •3.5. Управляющие конструкции.
- •3.5.1. Операторы ветвлений.
- •3.5.1.1. Условный оператор.
- •3.5.1.2. Оператор выбора.
- •3.5.2. Операторы циклов.
- •3.5.2.1. Регулярный цикл.
- •3.5.2.2. Итерационные циклы.
- •3.5.2.3. Цикл перечислимого типа.
- •3.5.3. Элементы выбора.
- •3.5.3.1. Элемент CheckBox.
- •3.5.3.2. Элемент OptionButton.
- •3.5.4. Элемент управления и функция Timer.
- •3.5.5. Дата и время.
- •3.5.6. Оператор DoEvents.
- •3.5.7. Объединение кнопок в группы.
- •3.5.7.1. Элемент Frame.
- •3.6. Списки.
- •3.6.1. Элемент ListBox.
- •3.6.2. Элемент ComboBox.
- •Глава 4. Массивы.
- •4.1. Одномерные массивы.
- •4.2. Двумерные массивы.
- •4.3. Статические и динамические массивы.
- •4.4. Функция Array.
- •4.5. Генератор случайных чисел.
- •4.6. Функции lBound и uBound.
- •4.7. Массивы элементов управления.
- •4.8. Сопоставление массивов и списков.
- •4.9. Элемент msFlexGrid.
- •4.10. Упорядочение строк элемента msFlexGrid.
- •Глава 5. Процедуры и функции полоьзователя.
- •5.1. Создание стандартного модуля в приложении.
- •5.2.2. Вызов процедуры на выполнение.
- •5.3. Функции пользователя.
- •Глава 6. Обработка текстовой информации.
- •6.1. Изменение регистра символов в тексте.
- •6.2. Поиск заданной подстроки в тексте.
- •6.3. Выборка части текста.
- •6.4. Замена символов в тексте.
- •6.5. Удаление лишних пробелов из строки текста.
- •6.6. Инвертирование строк.
- •6.7. Преобразование текстовых строк в числа и наоборот.
- •6.8. Определение длины текста.
- •Глава 7. Создание меню пользователя.
- •Глава 8. Пользовательский тип данных.
- •8.1. Записи.
- •8.2. Сложные структуры данных.
- •Глава 9. Файлы.
- •9.1. Файлы последовательного доступа.
- •9.1.1. Открытие файла последовательного доступа.
- •9.1.2. Запись информации в файл.
- •9.1.3. Чтение информации из файла.
- •9.1.4. Закрытие файла.
- •9.2. Файлы произвольного доступа.
- •9.2.1. Открытие файла произвольного доступа.
- •9.2.2. Запись информации в файл.
- •9.4. Операции с файлами в vb.
- •9.5. Файловые операторы и функции обработки данных.
- •9.6. Сравнительный пример работы с файлами.
- •Глава 10. Обработка бд Access в среде vb.
- •10.1. Создание бд Access в среде vb.
- •10.2. Использование технологии Data Access Objects (dao).
- •10.2.1. Элемент управления Data.
- •10.2.2. Свойство Recordset элемента Data.
- •10.2.3. Программное связывание элементов.
- •10.3. Технология ActiveX Data Objects (ado).
- •10.3.1. Подключение ado Data к источнику данных (бд).
- •10.3.2. Подключение ado Data к источнику записей.
- •10.3.3. Элемент управления DataGrid.
- •10.4. Объекты ado.
- •10.4.1. Объект Connection.
- •10.4.2. Объект RecordSet.
- •10.4.3. Перемещение по набору записей.
- •10.4.4. Обращение к отдельным полям записи.
- •10.4.5. Выполнение запросов к бд.
- •10.5. Пример обработки бд в рамках технологии ado.
- •Глава 11. Обмен данными между приложениями.
- •11.1. Экспорт данных из бд в текстовый файл.
- •11.2. Технология внедрения и связывания (ole).
- •11.3. Связывание и внедрение на этапе design.
- •11.3.1. Связывание на этапе проектирования. Сразу же после размещения на форме элемента ole появляется
- •11.3.2. Внедрение на этапе проектирования.
- •11.4. Связывание и внедрение объектов на этапе run.
- •11.4.1. Свойства ole-контейнера.
- •11.4.2. Методы ole-контейнера.
- •11.4.3. События, связанные с ole-контейнером.
- •11.4.5. Внедрение объекта на этапе run. Для внедрения объектов в vb-приложение используется метод CreateEmbed. Синтаксис оператора, использующего этот метод:
- •Глава 12. Графические средства vb 6.
- •12.1. Управление цветом.
- •12.2. Изображения в интерфейсе проекта.
- •12.2.1. Наложение изображения на этапе проектирования. Наложение изображения на форму.
- •Восстановление утраченных графических файлов.
- •Наложение изображения на элемент PictureBox.
- •Наложение изображения на элемент CommandButton.
- •12.2.2. Наложение изображений на этапе выполнения.
- •12.3. Использование анимированных изображений.
- •12.3.1. Визуализация анимированных gif-файлов.
- •12.3.2. Визуализация на форме клипов.
- •12.4. Рисунки на графических объектах.
- •12.4.1. Элемент Shape.
- •12.4.2. Элемент Line.
- •12.5. Графические методы.
- •12.5.1. Методы для работы с изображением точки.
- •12.5.2. Метод Line.
- •12.5.3. Метод Circle.
- •12.6. Использование графики для решения отдельных задач.
- •12.6.1. Визуализация процесса сортировки элементов массива.
- •12.6.2. Принадлежность точки заданной области.
- •Приложение 1. Типовые алгоритмы обработки чисел.
- •Приложение 3. Алгоритмы обработки массивов.
- •Приложение 4. Примеры создания процедур и функций.
- •Приложение 5. Пример обработки типизированных файлов.
- •Приложение 6. Пример обработки бд Access в среде vb.
- •Оглавление
- •Глава 1. Vb 6.0 – среда разработки приложений. 4
- •Глава 2. Данные vb. 20
- •Глава 3. Алгоритмизация вычислительных процессов. 33
- •Глава 4. Массивы. 61
- •Глава 5. Процедуры и функции полоьзователя. 77
- •Глава 10. Обработка бд Access в среде vb. 110
- •Глава 11. Обмен данными между приложениями. 139
- •Глава 12. Графические средства vb 6. 150
3.5.2.2. Итерационные циклы.
Итерационные циклы делятся на циклы с предусловием и постусловием. Эти циклы используются, когда количество повторений зара -
нее неизвестно.
Итерационные циклы с предусловием:
1) Конструкция Do While . . . . Loop.
Синтаксис этого цикла:
Do While <условие>
Операторы тела цикла
Loop
Аргумент <условие> является логическим выражением. Если его значение равно True, то выполняется тело цикла. Если при очередном проходе оно станет ложным, происходит выход из цикла на оператор, следующий за оператором цикла. Проверка значения условия происходит перед каждой очередной итерацией, поэтому операторы тела этого цикла могут не выполниться ни разу, если при первой проверке условие ложно. Значит, до цикла должны быть заданы или вычислены значения всех переменных, входящих в условие. Кроме того, в теле цикла должен быть хотя бы один оператор, влияющий на значение условия, иначе цикл может оказаться бесконечным.
2) Конструкция Do Until . . . . Loop.
Синтаксис:
Do Until <условие>
Операторы тела цикла
Loop
Здесь <условие> является логическим выражением, служащим
для выхода из цикла, а не для его продолжения, как в предыдущей конструкции. Операторы тела этого цикла повторяются до тех пор, пока логическое выражение остаётся ложным. Поэтому, если до входа в цикл переменные, входящие в условия, таковы, что условие истинно, то целесообразно использовать конструкцию Do While . . . . Loop. В противном случае лучше использовать конструкцию Do Until . . . . Loop.
Итерационные циклы с постусловием:
Проверка истинности условия в итерационных циклах может быть вынесена в конец цикла, тогда они приобретают вид:
1) Конструкция Do . . . . Loop While <условие>.
Синтаксис:
Do
Операторы тела цикла
Loop While <условие>
2) Конструкция Do . . . . Loop Until <условие>.
Синтаксис:
Do
Операторы тела цикла
Loop Until <условие>
При использовании этих конструкций операторы тела цикла выполняются всегда хотя бы один раз, так как первая проверка истинности условия в них происходит после того, как хотя бы один раз выполнились операторы тела цикла. По этой причине переменные, определяющие значение условия необязательно должны быть заданы перед входом цикла: они могут быть заданы или вычислены операторами тела цикла. Только следует помнить, что среди операторов тела цикла должны быть такие, которые влияют на значение условия, чтобы оно не оставалось постоянно только истинным или только ложным, иначе цикл никогда не завершится.
Иногда требуется специально организовать бесконечный итерационный цикл. Для этого достаточно вместо условия поставить логическую константу True или False:
Do While True
. . . . . . . . .
Loop
Такой цикл никогда не завершится, поскольку условие в нем постоянно истинно.
Для досрочного выхода из всех итерационных циклов или прерывания бесконечного цикла в теле цикла должен присутствовать оператор Exit Do, который при выполнении некоторого условия в теле цикла обеспечивает выход из цикла. Например:
n = 0
Do
n = n + 1
If n >= 500 Then Exit Do
Loop Until False
Пример. Определить, сколько раз во вводимой последовательности целых чисел чередуются четные и нечетные числа.
Private Sub Command1_Click()
Dim n%, k%, fp As Boolean, fs As Boolean
k = 0: fp = False
n = InputBox(“Введите 1- ый элемент последовательности”)
If n mod 2 = 0 Then fp = True
Do
fs = False
n = InputBox(“Введите очередной элемент ”)
If n mod 2 = 0 Then fs = True
If fp Xor fs Then k = k + 1: fp = fs
Loop Until MsgBox(“Продолжить ввод ?”, 36) = vbNo
Text1.Text = “Количество чередований = ” & k
End Sub
Здесь fp и fs – это логические переменные, которые принимают значение True, когда введенное число является четным, иначе они принимают значение False. Индикатором четности предыдущего элемента последовательности является fp, а следующего – fs. Результат логической операции Xor равен True, если значения операндов противоположны. Иначе он равен False.