
- •Содержание
- •17.2.2. Свойства 130
- •17.6.2. Свойства 133
- •17.7.2. Свойства 134
- •18. Меню 139
- •Основные понятия ооп
- •Объекты
- •Классы объектов
- •Свойства
- •События
- •Три основных принципа ооп
- •Инкапсуляция
- •Наследование
- •Полиморфизм (имеющий много форм)
- •Визуальное проектирование интерфейса
- •Событийно-управляемое программирование
- •Процесс создания приложений
- •Интегрированная среда разработки (иср) visual basic
- •Общая организация программы в vb
- •Структура проекта vb
- •Структура событийной процедуры
- •Общее описание среды vb
- •Краткая характеристика элементов управления, используемых при создании простых приложений
- •Основные свойства, методы и события объектов vb
- •Основные элементы языка Vb
- •Типы данных
- •Переменные
- •Объявление переменных
- •Explicit-объявление
- •Константы
- •Выражения и операции
- •Стандартные подпрограммы
- •Математические функции vb
- •Функции преобразования данных vb
- •Операторы
- •Простые операторы
- •Оператор присваивания
- •Операторы вызова процедур
- •Оператор безусловного перехода
- •Системные диалоговые окна
- •Диалоговое окно ввода информации InputBox
- •InputBox(Приглашение,Заголовок,НачЗначение),
- •Окно сообщения MsgBox
- •Ввод и вывод данных в vb
- •Ввод данных
- •Вывод результатов
- •Функция Format
- •Структурные операторы
- •Условные операторы
- •Оператор выбора Select … Case
- •Операторы повтора
- •Циклы с параметром
- •Элемент управления Slider
- •Циклы с условием
- •Использование рекуррентной формулы для вычисления суммы ряда
- •Использование функции Timer
- •Подпрограммы пользователя
- •Пользовательские процедуры
- •Способ передачи аргументов
- •Функции пользователя
- •Массивы
- •Оператор Option Base
- •Динамические массивы
- •Функции lBound и uBound
- •Функция Rnd
- •Оператор Erase
- •Типовые задачи на обработку одномерных массивов
- •Формирование массива с помощью функции Split
- •Линейная сортировка массива
- •Уплотнение массива
- •Вставка элемента в массив
- •Изменение положения элементов на некотором отрезке
- •Кольцевой сдвиг элементов массива
- •Двумерные массивы
- •Ввод и вывод двумерных массивов
- •Формирование двумерного массива с помощью диалогового окна InputBox и функции Split
- •Вывод двумерного массива с помощью элемента управления msFlexGrid
- •Типовые задачи на обработку двумерных массивов
- •Преобразование двумерных массивов
- •Типовые задачи с квадратными матрицами
- •Массивы в качестве формальных параметров в процедурах и функциях пользователя
- •Данные строкового типа
- •Операции над строками
- •Функции, предназначенные для работы со строками
- •Функция Split
- •Функция Join
- •Оператор Mid
- •Типовые задачи на обработку строк
- •Анализ символьных строк
- •Изменение строк (замена, удаление, вставка символов)
- •Функции и операторы для работы с файлами
- •Открытие файлов
- •Закрытие файлов
- •Работа с файлами последовательного доступа
- •Чтение данных
- •Запись данных
- •Элемент управления CommonDialog
- •Графика в vb
- •Методы графики в vb
- •Задание цвета
- •Свойства объектов, влияющих на графические методы:
- •Применение метода Scale
- •Построение графика функции
- •Некоторые дополнительные элементы управления, которые часто используются в проектах.
- •Объект управления Shape (Фигура)
- •Свойства
- •Объект управления Timer
- •События
- •Свойства
- •Окна общего диалога
- •Создание меню
- •Свойства
- •Работа с несколькими формами
-
Операторы повтора
Циклические конструкции обеспечивают многократное выполнение одной и той же последовательности операторов для различных значений, входящих в них переменных.
Многократно выполняемые последовательности операторов называют циклами, а изменяющиеся в цикле переменные – переменными цикла.
Алгоритм циклической структуры должен содержать:
-
Подготовку цикла – задание начальных значений переменных цикла перед первым его выполнением;
-
Тело цикла – операторы, которые выполняются при различных значениях переменных цикла;
-
Изменение значений переменных цикла перед его новым повторением;
-
Управление циклом – проверку условия окончания цикла или перехода на начало тела цикла.
В VB для этой цели существуют два вида элементарных циклических структур:
-
циклы с параметром;
-
циклы с условием.
-
Циклы с параметром
Если количество повторов тела цикла заранее известно, то обычно используют так называемые циклы с параметром. Схематично такой цикл может быть изображен следующим образом:
В языке VB циклы с параметром реализуются с помощью оператора For, который имеет следующий формат:
For Счетчик:=S1 To S2 [Step Шаг] Тело цикла Next [Счетчик] |
где
Счетчик – параметр цикла порядкового типа;
S1 и S2 – выражения, определяющие начальное и конечное значение параметра цикла;
Шаг – шаг изменения значения счетчика;
Тело цикла – многократно выполняемые операторы.
Шаг может быть как положительным, так и отрицательным числом. Если Шаг равен единице, то конструкция Step Шаг может быть опущена. Если Шаг отрицателен, то начальное значение, естественно, должно быть больше конечного.
Цикл повторяется пока значение параметра цикла лежит в интервале [S1,S2], причем эти выражения S1 и S2 вычисляются только один раз в начале цикла. Необходимо, чтобы параметр цикла, начальное и конечное значения были одного типа.
В начале выполнения цикла значение Счетчик становится равным S1. При каждом проходе переменная Счетчик увеличивается на 1 или на величину Шаг. Если значение Счетчика становится больше конечного значения S2, то цикл завершается, после чего выполняются следующие за циклом операторы.
Примеры конструкций операторов цикла с параметром:
For i = 1 To 10 Print i * 100 Next i |
For L = 100 To 5 Step -0.5 x = y * L Next |
For i = 1 To 5 For j = 10 To 20 Print i + j Next j Next i |
Из тела цикла с параметром можно выйти до окончания цикла с помощью оператора Exit For.
Пример 1. Напечатать 10 чисел ряда Фибоначчи (каждое последующее число равно сумме двух предыдущих), начиная с 11 числа.
Private Sub Command1_Click() Dim f1 As Integer, f2 As Integer Dim i As Byte f1 = 1: f2 = 1 For i = 1 To 20 If i > 10 Then Print f1 f2 = f1 + f2 f1 = f2 - f1 Next i End Sub |
|
Пример 2. Вычислить сумму конечного
ряда
.
Private Sub Command1_Click()
n=Val(Text1.Text)
s=0
'Организация цикла по числу членов последовательности
For k=1 To n
'Вычисление очередного члена последовательности
y=(k+0.3)/(3*k*k+5)
s=s+y 'Вычисление суммы ряда
Next k
Text2.Text=Str(s) 'Вывод результирующей суммы
End;