Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
310_1111.doc
Скачиваний:
3
Добавлен:
20.09.2019
Размер:
404.99 Кб
Скачать

Билет 6

1.Процедура- это набор операторов языка Бейсик, существующих в виде блока. Есть два типа процедур SUB (подпрограмма) и FUNCTION (функция). Процедуры помогают организовывать многократное использование блока операторов. Вместо того чтобы заново вводить каждую строку в нескольких местах программы для выполнения одних и тех же задач, можно создать одну процедуру и вызывать ее из нескольких мест программы. Это не только сократит объем вводимого текста, но и гарантирует одинаковую работу процедуры при каждом вызове.

Подпрограмма выполняет заданный блок операторов и не возвращает значения основной программе.

2. Принцип работы полос прокрутки чем-то напоминает ползунок регулятора громкости стереосистемы. Они используются для установки параметра, значение которого может меняться в некотором диапазоне – от минимума до максимума. С точки зрения программирования, описываемый элемент управления возвращает числовое значение, которое зависит от положения бегунка, а также от выбранного программистом диапазона чисел.

В Visual Basic предусмотрено два типа полос прокрутки: вертикальная и горизонтальная. В документации они называются как элементы управления типа VscrollBar и HScrollBar соответственно. В рассматриваемых ниже примерах мы пользуемся горизонтальной полосой прокрутки, хотя вся информация относится также и к вертикальной полосе прокрутки. Эти два элемента абсолютно равноправны.

Пример

Изменяя значения полосы прокрутки необходимо отражать текущее значение в текстовом поле.

Private Sub Form_Load()

HScroll1.Min = 0

HScroll1.Max = 100

HScroll1.LargeChange = 10

HScroll1.SmallChange = 1

HScroll1.Value = 50

Text1.Alignment = 2

Text1.FontSize = 20

End Sub

Private Sub HScroll1_Change()

Text1.Text = HScroll1.Value & " км/час"

End Sub

3.

4.

5. Cls Dim n As Integer, i As Integer, j As Integer INPUT n Dim a(n) As Integer, b(n) As Integer Randomize Timer For i = 0 To n - 1 a(i) = Int(Rnd * 20) Print a(i); Next i Print For i = 0 To n - 1 If a(i) Mod 2 = 0 Then b(j) = a(i) j = j + 1 End If Next i For i = 0 To n - 1 If a(i) Mod 3 = 0 And a(i) Mod 2 <> 0 Then b(j) = a(i) j = j + 1 End If Next i For i = 0 To n - 1 If a(i) Mod 2 <> 0 And a(i) Mod 3 <> 0 Then b(j) = a(i) j = j + 1 End If Next i For i = 0 To n - 1 Print b(i); Next i

6.  Dim i As Integer Dim a As Double rs.MoveFirst For i = 1 To 4 rs.MoveNext Next For i = 0 To 4 a = a + rs.Fields(0) rs.MoveNext Next MsgBox a

Билет 7

2. Комбобокс-это поле со списком , позволяющее пользователю выбрать значение из списка, а также ввести новое значение в текстовое поле. Комбо бокс отлич. от листбокса тем, что он позволяет пользователю задавать новые пункты, которых нету в списке. Елементы управления:DropDownCombo-поле с раскрывающимся списком, позволяет выбрать готовый елемент или или ввести новый елемент в текстовое поле.Simple Combo-обычный список(список не расскрывается) , позволяет выбрать готовый елемент или или ввести новый елемент в текстовое поле.DropDownList-расскрывающийся список,пользователь может выбрать только то,что предлагает список .

3. Свойства CurrentX и CurrentY

Основным понятием при рисовании является текущая точка (current point). Visual Basic позволяет рисовать фигуры без указания начальной точки. Если начальная точка линии не указана, то ею становится текущая точка. После того, как линия проведена, текущей становится ее конечная точка. Свойства CurrentX и CurrentY устанавливают или считывают координаты текущей точки в единицах текущей системы координат. Чтобы отобразить на форме строку с конкретными координатами, установите их в свойства CurrentX и CurrentY, а затем используйте метод Print для отображения строки.

Свойства CurrentX, CurrentY устанавливают или возвращают графические координаты текущего графического вывода.

Задает горизонтальную (X) и вертикальную (Y) координаты для следующего метода рисования.

Применение:

Form, _SCREEN

Синтаксис:

Object.CurrentX[ = nXCoord]

Object.CurrentY[ = nYCoord]

Установки:

nXCoord

Задает горизонтальную координату объекта Form, в единицах измерения, определяемых свойством ScaleMode этого объекта.

nYCoord

Задает вертикальную координату объекта Form, в единицах измерения, определяемых свойством ScaleMode этого объекта.

Комментарии:

Недоступно на этапе разработки, доступно для чтения-записи на этапе выполнения.

Координаты отсчитываются, начиная с левого верхнего угла объекта. Значение CurrentX равно 0 на левом краю объекта, а значение CurrentY равно 0 на верхнем краю объекта. Координаты выражаются в фокселах или в текущих единицах измерения, определяемых свойством ScaleMode.

В следующей таблице показано, как изменяются установки CurrentX и CurrentY при использовании тех или иных методов графики.

Метод Позиция, в которую устанавливаются CurrentX, CurrentY

Box Конечная точка рамки, заданная двумя последними аргументами.

Circle Центр объекта.

Cls 0, 0.

Line Конечная точка линии.

Print Следующая позиция печати.

PSet Нарисованная точка.

5. Cls Dim n As Integer, i As Integer, k As Integer INPUT n Dim a(n) As Integer Randomize Timer For i = 0 To n - 1 a(i) = Int(Rnd * 20 - 10) Print a(i); Next i Print For i = 0 To n - 2 If a(i) * a(i + 1) < 0 Then k = k + 1 Next i Print "Kolichestvo:"; k

6. Dim a As Double, b As Double Do Until rs.EOF = True If rs.Fields(0) > 0 Then a = a + 1 ElseIf rs.Fields(0) < 0 Then b = b + 1 End If rs.MoveNext Loop MsgBox "отр -- " & b MsgBox "пол -- " & a

Билет 8

1.Сортировкой является такая перестановка элементов (в массиве), после которой они оказываются упорядоченными требуемым образом.

Сортировка методом пузырька

Этот метод основан на попарном сравнении смежных элементов данных; если порядок следования элементов в очередной паре неправилен, то эти элементы обмениваются местами. Для выполнения обмена требуется дополнительная переменная, сохраняющая на время обмена одно из значений. Если значения, которыми надо обменяться, содержатся в переменных А и В, то обмен можно выполнить посредством операторов

Т=А

А=В

В=Т

использующих переменную Т (в качестве рабочей ячейки).

2. Во многих создаваемых приложениях используют возможности массивов. Для доступа к элементам массивов часто применяют элемент управления ListBox. Элемент управления ListBox (список) создается с помощью кнопки Список. Данный элемент нужен для хранения списка значений. Из списка пользователь может выбрать одно или несколько значений, которые в последующем могут использоваться в тексте программы.

Наиболее часто используемые свойства элемента управления ListBox

ListIndex – возвращает номер текущего элемента списка, нумерация элементов списка начинается с нуля;

Listcount – возвращает число элементов списка;

TopIndex – возвращает элемент списка с наибольшим номером;

columnCount – устанавливает число столбцов в списке;

textcolumn – устанавливает столбец в списке, элемент которого возвращается свойством text;

text – возвращает выбранный в списке элемент;

List (row, column) – возвращает элемент списка, стоящий на пересечении указанных строки и столбца;

RowSourse – устанавливает диапазон, содержащий элементы списка;

ControlCourse – устанавливает диапазон (ячейку), куда возвращается выбранный элемент из списка;

multiSelect – устанавливает способ выбора элементов списка. Допустимые значения:

fmMultiSelectSingle – выбор только одного элемента;

fmMultiSelectMulti – разрешен выбор нескольких элементов посредством либо щелчка, либо нажатием клавиши Пробел;

fmMultiSelectExtended – разрешено использование клавиши shift при выборе ряда последовательных элементов списка;

selected – допустимые значения: True (если элемент списка выбран) и False (в противном случае), используется для определения выделенного текста, когда свойство multiSelect имеет значение fmMultiSelectMulti или fmMultiSelectExtended;

columnWidths – устанавливает ширину столбцов списка.

3. Метод Print можно использовать совместно с графическими методами. При этом строки и числа будут выводиться в том месте формы или графического окна, где закончилось рисование, - ниже или правее точки, на которой закончилось рисование.

Метод можно применять к объектам класса - экранная форма и PictureBox - графическое окно. Объекты form и PictureBox имеют абсолютные координаты, которые измеряются в твипах и позволяют задать положение на экране для формы или положение на форме для графического окна, а также ширину и длину. Line (линия, контур) Позволяет отобразить на заданном обьекте отрезок с заданными координатами его концов, а также прямоугольник с заданными декартовыми координатами его углов

Метод рисования линий, называемый Line, имеет следующий синтаксис.

Line[Step] (XI, Yl) - [Step] (Х2, Y2), [color], [В][F]

Ниже приведена программа для рисования линий различных стилей в элементе Picture1.

Private Sub Picture1_Click()

Hstep = Picture1.ScaleHeight/6

For i% = 1 to 6

Picture1.DrawStyle = i% - 1

Picture1.Line (.1* Picture1.ScaleWidth, Hstep * i%)-(.9* Picture1.ScaleWidth, Hstep * i%)

Next

End Sub

Печатаем текст в середине экрана

Form1.CurrentX=(Form1.ScaleWidth-TextWidth("Centered Text"))/2

Form1.CurrentY=(Form1.ScaleHeight-TextHeight("Centered Text"))/2

Form1.Print "Centered Text"

4. Связанные с данными элементы управления могут отображать поля текущей записи в объекте RecordSet элемента управления Data. Для обращения к полям БД в коде программы используются объекты Field набора записей RecordSet. При этом обращаться к отдельным полям можно по имени или порядковому номеру в таблице.

Другие два свойства,- это свойство RecordCount объекта RecordSet (возвращает число записей в RecordSet) и свойство Count объекта Fields (возвращает число полей в строке RecordSet).

5. Cls Dim n As Integer, i As Integer, max As Integer, min As Integer INPUT n Dim m(n) As Integer Dim s(n) As Integer Randomize Timer For i = 1 To n m(i) = Int(Rnd * 10) Print m(i); Next i Print For i = 2 To n s(i) = Abs(m(i) + m(i - 1)) Next i max = s(2) min = s(2) For i = 2 To n If s(i) > max Then max = s(i) If s(i) < min Then min = s(i) Next i Print "max="; max Print "min="; min

6. Dim max As Double Dim a As Double, b As Double rs.MoveFirst a = rs.Fields(0) rs.MoveLast b = rs.Fields(0) If a > b Then max = a ElseIf b > a Then max = a ElseIf a = b Then End If MsgBox "max= " & max

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]