- •Общие сведения об языке vb. Области применения vba, vbScript, ActiveX, vb.Net.
- •Системы программирования.
- •Методика программирования на vb. Понятия объекта, события, свойства и метода.
- •Среда разработки vb. Окно проекта, окно формы, панель инструментов формы, окно свойств, окно программного кода.
- •Алфавит языка. Пример записи операторов кода в модуле.
- •Типы переменных в языке vb. Суффиксы, определяющие тип переменной.
- •Запись констант. Примеры использования констант.
- •15. Встроенные функции vb.
- •20. Понятие алгоритма. Свойства алгоритма. Способы описания алгоритма. Примеры
- •Способы описания алгоритмов
- •21. Основные структуры алгоритмов. Язык блок-схем. Элементы, правила составления.
- •Требования к изображению блок-схем:
- •Текст модуля:
- •Текст программы:
- •Синтаксис функции следующий:
- •Пример:
- •Текст программы:
- •47. Процедуры Sub в vb. Формальные и фактические параметры.
- •Текст программы:
- •52.Методы и средства защиты в компьютерных системах.
- •53. Информационная безопасность и её компоненты.
- •Категории безопасности:
- •54. Правовые методы защиты программ.
Текст программы:
Private Sub Комманда1 _Click() ' Кнопка Расчет
Dim x0 As Single, xk As Single, h As Single, x As Single, y As Single
Cls ' Очистка формы
x0 = Val(InputBox("Ввод x0 - начального значения аргумента"))
xk = Val(InputBox("Ввод xk - конечного значения аргумента"))
h = Val(InputBox("Ввод h - шага изменения аргумента"))
Print Tab(7); "Функция y = 1.2sin(3x)"
For x = x0 To xk + h/2 Step h
y = 1.2 * Sin(3 * x)
Next x
End Sub
38. Двумерные массивы – матрицы. Объект ListBox. Программа транспонирования матрицы
Для описания многомерных массивов используются конструкции, аналогичные конструкциям для одномерных массивов. Отличие состоит в том, что при объявлении массивов через запятую указываются несколько границ размерностей. Например, двумерный массив из 6 столбцов и 5 строк, содержащий целые числа, объявляется следующим образом:
Dim D (1 To 5, 1 To 6) As Integer
ListBox – управляющий элемент. Поле списка позволяет отображать элементы списка и выбирать их.
Текст программы:
Private Sub Комманда1_Click()
Dim tr, tc As Integer : Dim s As String
Randomize Timer
Dim a(1 To 3, 1 To 3) As Integer
Dim b(1 To 3, 1 To 3) As Integer
For tr = 1 To 3
s = " "
For tc = 1 To 3
a(tr, tc) = Int(10 * Rnd)
s = s & " " & Str(a(tr, tc))
Next tc
Список1.AddItem s
Next tr
For tr = 1 To 3 ‘транспонирование
For tc = 1 To 3 ‘матрицы
b(tr, tc) = a(tc, tr)
Next tc : Next tr
For tr = 1 To 3
s = " "
For tc = 1 To 3
s = s & " " & Str(b(tr, tc))
Next tc
Список2.AddItem s
Next tr
End Sub
39. Вывод матрицы на форму
40. формированием списка.
41. Алгоритм и программа вычисления суммы элементов матрицы по столбцам.
Private Sub Комманда1_Click()
Dim tr, tc, i, j As Integer : Dim s As String
Randomize Timer
Dim a(1 To 3, 1 To 3) As Integer
Dim b(1 To 3) As Integer
For tr = 1 To 3
s = " "
For tc = 1 To 3
a(tr, tc) = Int(10 * Rnd)
s = s & " " & Str(a(tr, tc))
Next tc
Список1.AddItem s
Next tr
For j = 1 To 3
b(j) = 0
For i = 1 To 3
b(j) = b(j) + a(i, j)
Next i
Next j
s = " "
For j = 1 To 3
s = s & " " & Str(b(j))
Next j
Список2.AddItem s
End Sub
42, 43. Операторы цикла Do While…Loop, Do.. Loop While, Do Until…Loop, Do.. Loop Until. Пример.
Оператор цикла Do-Loop. Логически управляемый цикл, оператор Do — начало, оператор Loop — конец цикла.
Оператор имеет четыре модификации:
1) Условие имеет значение True в начале цикла.
Структура:
Do While <условие>
<блок операторов>
Exit Do <блок операторов>
Loop
Цикл выполняется пока истинно условие. Оператор Exit Do предназначен для прекращения цикла и передачи управления оператору Loop — конец цикла.
2) Условие имеет значение True в конце цикла.
Структура:
Do
<блок операторов>
Exit Do
<блок операторов>
Loop While <условие>
Цикл выполняется хотя бы один раз, проверка условия в конце цикла.
3) Условие False в начале цикла.
Структура:
Do Until <условие>
<блок операторов>
Exit Do
<блок операторов>
Loop
Цикл выполняется до тех пор, пока условие не станет истинным.
4) Условие False в конце цикла.
Структура:
Do
<блок операторов>
Exit Do
<блок операторов>
Loop Until<условие>
Условие проверяется в конце цикла. Цикл прекращается, когда условие станет истинным.
Пример:
Do While True
A=Rnd :Debug.Print a
If a>0.99 Then Exit Do
Loop
44. Цикл While-Wend. Пример.
Цикл While-Wend аналогичен циклу Do While-Loop, проверка условия выполняется в начале цикла.
Структура:
While <условие>
<блок операторов>
Wend.
Пример программы на использование цикла с условием. Расчёт количества расфасованных пакетов.
Private Sub Command_Click()
M=100: I=0
Print “Номер “, “Остаток “
Do
I=I+1
If I>99 then Exit Do ‘Оператор Exit Do служит для
прерывания цикла, помещается
внутри цикла и приводит передаче
управления следующему за
циклом оператору
M=M-M/100
Loop Until M<5
Print I, M
End Sub
45. Цикл For Each. Пример
Цикл For Each. Оператор относится к категории объектных операторов, т.е. применяется к массивам, наборам объектов, коллекциям. Выполняется фиксированное число раз, число объектов в наборе определяется автоматически.
Структура:
For Each <элемент> In <набор>
<блок операторов>
Exit For
<блок операторов> Next <элемент>
Пример:
For each z In arrx
n=n+1
x(n)=z
Next z
Пример программы с оператором For Each:
Function intl (arrx; arry; x_new)
Dim i As Integer
Dim n As Integer
Dim j As Integer
Dim x (1 to 100) as Double
Dim y (1 to 100) as Double
Dim z
n=0
For each z in arrx
n=n+1
x(n)=z
Next z
n=0
For each z in arry
n=n+1
y(n)=z
Next z
For i=1 to n-1
If x(i) <= x_new And x(i+1)>= x_new Then j= i
Next i
If x_new > x(n) Then j = n – 1
If x_new < x(1) Then j = 1
Intl = y(j) + (y( j+1 ) – y( j ) ) * (x_new – x ( j )) / (x( j + 1) – x(j))
End Function
Цикл For Each…Next похож на цикл For …Next, но он повторяет группу операторов для каждого элемента из набора объектов (коллекции). Он особенно удобен, тогда, когда заранее не известно, сколько элементов содержится в наборе. Для наборов параметром этого цикла может быть только переменная типа Variant, Object или объектом перечисленным в Object Browser. Для массивов параметром этого цикла может быть только переменная типа Variant. Нельзя использовать этот цикл с массивом, имеющим определённый пользователем тип.
46. Процедуры в VB. Три типа процедур. Общие процедуры.
Программные модули на VB состоят из процедур. Использование процедур упрощает программирование, разбивая код модуля на процедуры, можно намного упростить чтение и модификацию текстов программ. В VB используется несколько видов процедур:
Процедуры SUB (не возвращает значения);
Процедуры Function (возвращает значение);
Процедуры Property (могут возвращать и присваивать значение, а также устанавливать ссылки на объекты).
Общая процедура указывает приложению, как выполнять конкретную задачу. Однажды определённая, она должна каждый раз специально вызываться приложением. В противоположность ей процедура обработки события после вызова остаётся в ожидания событий, вызванных пользователем или инициированных системой. Так программа обработки события Click вызывает процедуру Sub с именем CommandButton1, которая выполняет свой код и возвращает управление процедуре обработки события Click. Как только объект в VB распознаёт, что произошло событие, он активизирует процедуру обработки события с именем, соответствующем данному событию. Так как имя процедуры устанавливает связь между объектом и кодом, то говорят, что процедуры обработки событий прикреплены к формам и элементам управления.
Параметры процедуры могут передаваться по значению и по ссылке. В первом случае процедуре передаётся только копия переменной, выступающей в качестве параметра процедуры. Если процедура изменяет значение параметра, то это затрагивает только копию переменной, а не саму переменную, т.е. во вне новое значение не передаётся.