- •Общие сведения об языке vb. Области применения vba, vbScript, ActiveX, vb.Net.
- •Системы программирования.
- •Методика программирования на vb. Понятия объекта, события, свойства и метода.
- •Среда разработки vb. Окно проекта, окно формы, панель инструментов формы, окно свойств, окно программного кода.
- •Алфавит языка. Пример записи операторов кода в модуле.
- •Типы переменных в языке vb. Суффиксы, определяющие тип переменной.
- •Запись констант. Примеры использования констант.
- •15. Встроенные функции vb.
- •20. Понятие алгоритма. Свойства алгоритма. Способы описания алгоритма. Примеры
- •Способы описания алгоритмов
- •21. Основные структуры алгоритмов. Язык блок-схем. Элементы, правила составления.
- •Требования к изображению блок-схем:
- •Текст модуля:
- •Текст программы:
- •Синтаксис функции следующий:
- •Пример:
- •Текст программы:
- •47. Процедуры Sub в vb. Формальные и фактические параметры.
- •Текст программы:
- •52.Методы и средства защиты в компьютерных системах.
- •53. Информационная безопасность и её компоненты.
- •Категории безопасности:
- •54. Правовые методы защиты программ.
Пример:
Private Sub Комманда1 _Click()
Randomize Timer
Dim Ver As Single: Ver = Rnd
Текст1 = IIf(Ver < 0.75, "Яблоки", "Грибы")
Текст2 = IIf(Ver < 0.75, "Яблочный пирог", "Пирог с грибами")
End Sub
30.Понятие массива. Описание массивов в VB. Динамические масивы.
Переопределение массивов.
В VBA различают два вида переменных — простые переменные и переменные структурного типа.
Простые переменные служат для идентификации и резервации памяти для одного данного. Переменные структурного вида предназначены для идентификации и резервации памяти для нескольких данных. Частным случаем переменной структурного вида является массив.
Массив представляет собой структуру, все элементы которой имеют одинаковый тип. Например, это могут быть данные, определяющие вектор или матрицу. Массивы могут быть одномерными и многомерными. Так, для отображения вектора может быть использован одномерный массив, а для отображения матрицы — многомерный.
Объявление массива имеет следующий вид:
Dim / Public / Private Имя_Массива (индексы)_Аs Тип_Данных
где:
Dim / Public / Private — ключевые слова, декларирующие массив в области его видимости;
Имя_Массива —идентификатор, определяющий имя массива;
Индексы — значение индекса (номера) последнего элемента в массиве, считая с нулевого;
As — ключевое слово, определяющее указание типа элементов массива;
Тип_Данных - любой, действительный для Visual Basic тип данных базовый или созданный пользователем.
Примеры описания статических массивов:
Dim B (5) As Single ' описан одномерный массив из 6 чисел вещественного типа
Dim C (1 To 12) As Integer ' описан одномерный массив из 12 целых чисел.
Объявление одномерного массива из восьми элементов выглядит следующим образом:
Dim МуАrrау (7) As integer 'одномерный целочисленный массив из 8 элементов.
При объявлении многомерного массива в поле индекса указывают несколько индексов в соответствии с размерностью массива. Двумерный массив из шести столбцов и пяти строк объявляется следующим образом:
Dim StrArray (4,5) As String ' двумерный массив из 5строк и 6 столбцов.
Пример заполнения массива:
Dim B ( ) As Single, N As Integer, i As Integer
N = Val(InputBox("Ввод количества элементов массива В"))
ReDim B (1 To N)
For i = 1 To N
B(i) =Val (InputBox("Ввод " & i & " элемента массива","Ввод с клавиатуры"))
Next i
Динамические массивы применяются в том случае, когда количество элементов массива заранее неизвестно и будет определяться в процессе выполнения программы.
В этом случае первоначально массив объявляется как динамический. Для этого в объявлении не указывается размерность. Например:
Dim strMyArray () As String
Количество элементов в объявленном массиве и его размерность в процессе выполнения программы можно переопределить с помощью ключевого слова ReDim. Синтаксическая конструкция переопределения массива имеет вид:
ReDim [Preserve] ИмяМассива (индексы) [As ТипДанных]
где:
ReDim — ключевое слово, указывающее что переопределяется размеры массива;
Preserve — необязательное ключевое слово, с помощью которого дается указание, чтобы все элементы переопределенного массива сохранили свое значение;
Индексы — размерность массива (до 60).
Пример:
Dim strMyArray () As String 'объявление динамического масива
Dim intValarray As integer 'объявление переменной для хранения размерности
intValArray = 9 'инициализация значения
ReDim strMyArray (intValArray) 'одномерный массив из 10 элементов (базовый индекс равен 0)
Или другой пример:
Dim array ( ) As Long ' объявление динамического массива
……..
n = Val(InputBox("Ввод количества элементов массива array"))
ReDim array (1 To n) ' одномерный массив из n элементов
31. Ввод элемента массива с помощью датчика случайных чисел, функции InputBox, предварительно созданного диска, с помощью функции Array. Примеры.
32. Оператор цикла For Next. Программа вычисления факториала.
Для того чтобы организовать повторение операций используют оператор цикла For Next. Оператор используется тогда, когда заранее известно число повторений цикла. Это многострочный оператор, его синтаксис таков:
For Имя=Значение1 To Значение2 [Step Значение3]
исполняемые операторы
Next [Имя]
Имя – это имя переменной, которую называют счётчиком.
Значение1 – начальное значение счётчика.
Значение2 – конечное значение счётчика.
Значение3 – величина шага.
Задача:
Вычислить факториал от числа. Число заносится в текстовое поле 1, а результат в текстовое поле 2. Вычисления производятся при нажатие командной кнопки.
Текст программы:
Private Sub Комманда1 _Click()
Dim n, I As Integer, Nf As Long
n = Val(Текст1.Text)
Nf = 1
For I=1 To n
Nf = Nf *I
Next I
Текст2.Text = Str(Nf)
End Sub
33. Алгоритм и программа Сумма.
Private Sub Комманда1 _Click()
Dim MyArray As Single
Dim intValarray As Integer
intValarray = Текст1.Text
S = 0
For i = 0 To intValarray
MyArray = InputBox("Введите элемент массива :", " a(i)=")
S = S + MyArray
Next
Текст2.Text = S
End Sub
34. Алгоритм и программа Счётчик.
Private Sub Комманда1 _Click()
Dim MyArray As Single
Dim intValarray As Integer
intValarray = Текст1.Text
k=0
For i=1 To n
If a(i)>= s And a(i) <= y then k=k+1
Next i
Текст2.Text = k
End Sub
35. Алгоритм и программа Максимум.
Текст программы:
Private Sub Комманда1_Click()
Dim MyArray As Single
Dim intValarray As Integer
intValarray = Val(Текст1)
ReDim a(intValarray) As Single
Max = -1000: k = 0
For i = 0 To intValarray
MyArray = InputBox("Введите э-т массива :", "Ввод a(i)=")
Список1.AddItem MyArray ‘метод AddItem используется
Список2.AddItem i ‘для добавления элементов в список
a(i) = MyArray
If a(i) > Max Then Max = a(i): k = i
Next
Текст2.Text = Max
Текст3.Text = k
End Sub
36. Алгоритм и программа Сортировка методом «пузырька».
Текст программы:
Private Sub Комманда1_Click()
Dim a(1 To 10) As Integer
Randomize Timer
For k = 1 To 10
a(k) = Int(10 * Rnd)
Список1.AddItem a(k)
Next k
For i = 1 To 9
For j = i + 1 To 10
If a(i) > a(j) Then
b = a(i): a(i) = a(j): a(j) = b
End If
Next j
Next i
For k = 1 To 10
Список2.AddItem a(k)
Next k
End Sub
37. Алгоритм и программа табулирования функции.
Разработать приложение, реализующее табулирование функции y=1,2sin(3x) при изменении аргумента х в диапазоне [x0,xk] с шагом h.