- •Содержание
- •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
- •События
- •Свойства
- •Окна общего диалога
- •Создание меню
- •Свойства
- •Работа с несколькими формами
-
Функция Split
Функция Split используется для расщепления строки на подстроки с использованием разделителя подстрок. Возвращает эта функция одномерный массив с типом данных Variant (String), содержащий в качестве элементов найденные подстроки.
Формат обращения к функции:
Split(Исходная строка,[Разделитель]) |
Здесь Исходная строка – строка, которую нужно расщепить (обязательный аргумент). Если аргумент содержит нулевую строку (””), то возвращается пустой массив.
Разделитель – символы типа String, которые используются в качестве разделителя строки (необязательный аргумент). Чаще всего в качестве разделителя используются символы пробел или запятая. Если аргумент опущен, то по умолчанию используется символ пробела (””). Если аргумент содержит нулевую строку (””), то возвращается одноэлементный массив, содержащий исходную строку.
-
Функция Join
Функция Join выполняет обратное действие – объединяет элементы массива в строку, используя указанный разделитель.
Формат обращения к функции:
Join (Имя массива, [Разделитель]) |
-
Оператор Mid
Оператор Mid используется для модификации строк.
Формат обращения к оператору:
Mid(Исходная строка, Позиция [, Длина]) = Замена |
Здесь Исходная строка – строка для модификации,
Позиция – позиция символа в исходной строке, с которой начинается замена,
Длина – число заменяемых символов,
Замена – строковое выражение для замены.
Число заменяемых символов всегда меньше или равно числу символов в исходной строке. Не следует путать этот оператор с одноименной функцией!
-
Типовые задачи на обработку строк
-
Анализ символьных строк
-
Пример 1. Ввести строку символов. Определить:
-
количество цифр в строке;
-
есть ли в строке одинаковые символы;
-
вывести все гласные буквы латинского алфавита.
Фрагмент программного кода:
Option Explicit
Private Sub Command1_Click()
Dim S As String, S1 As String, a As String
Dim i As Integer, kol As Integer, n As Integer
Dim T As Boolean 'Логическая переменная
S = Text1.Text 'Ввод строки
Text2.Text = "": Text3.Text = "": Text4.Text = ""
n = Len(S) 'Длина строки
'Определение количества цифр в строке
kol = 0 'Инициализация счетчика для подсчета количества цифр
For i = 1 To n 'Цикл по всем символам строки для поиска цифр
a = Mid(S, i, 1)
If (a >= "0") And (a <= "9") Then kol = kol + 1
Next i
Text2.Text = Str(kol) 'Вывод количества цифр в строке
'Определяется, есть ли в строке одинаковые символы
T = False 'Предполагается, что одинаковых символов нет
For i = 1 To n 'Цикл для поиска одинаковых символов
'Если i-ый символ исходной строки встречается в строке еще раз, то функция IntStr 'вернет значение не равное нулю
If (InStr(1, S, Mid(S, i, 1)) <> 0) And _
(InStr(1, S, Mid(S, i, 1)) <> i) Then
T = True 'i-ый символ в подстроке есть
Exit For 'Немедленный выход из цикла, если найден хотя бы
'один одинаковый символ
End If
Next i
If T Then
Text3.Text = "Одинаковые символы есть"
Else
Text3.Text = "Одинаковых символов нет"
End If
'Вывод гласных латинских букв
For i = 1 To n 'Цикл для поиска гласных латинских букв
a = Mid(S, i, 1)
Select Case a
Case "A", "E", "I", "O", "U", "Y"
Text4.Text = Text4.Text + a + " "
Case "a", "e", "i", "o", "u", "y"
Text4.Text = Text4.Text + a + " "
End Select
Next i
If Text4.Text = "" Then Text4.Text = "Таких букв нет"
End Sub
Пример 2. Дан текст. Определить количество предложений и найти количество слов, начинающихся с буквы «п».
Фрагмент программного кода:
S = Text1.Text
n = Len(S)
'Подсчет количества предложений
kp=0
For i = 1 To n
a = Mid(S, i, 1) 'Выделение i-го символа
If (a=".") Or (a="?") Or (a="!") Then kp=kp+1
Next i
'Подсчет количества слов, начинающихся с буквы «п» или «П»
If (Mid(S, 1, 1)="П") Then ks=1 Else ks=0'Проверка первого слова
For i=1 To n
If (Mid(S,i,2)=" П") Or (Mid(S,i,2)=" п") Then ks=ks+1
Next i