Объектно-ориентированный язык программирования Visual Basic. Практикум
.pdfSelect Case cbo Способ ListIndex Case 0
txt Массив.Text = ― ‖
For i = 1 To n
k = InputBox(―Введите‖ + Str(i) ‖число‖, ―Заполнение Массива‖) a( = Val(k))
txtМассив.Text = txtМассив.Text+ ― ‖ + Str(a(i))
Next i
Case 1 txtМассив.Text = ―‖
Randomize Timer For i = 1 To n
a(i) = Int(101 * Rnd())
txtМассив.Text = txtМассив.Text + ― ― + Str(a(i))
Next i End Select End Sub
Запустить программу на выполнение клавишей F5.
Проверьте, происходит ли заполнение массива обоими способами нормально и сохраните программный код.
Щелкните два раза по кнопка «Поиск максимального элемента» и введите программный код поиска максимального элемента.
Private Sub CmdMax_Click( )
frmМассив.Caption = frmМассив.Caption + ―Поиск максимального элемента‖
Max = a(1) : nMax=1 For i = 2 To n
If a(i) > Max Then Max = a(i)
nMax = i End If Next i
txtMax.Text = Str(Max) txtnMax.Text = Str(nMax) End Sub
Запустить программу на выполнение клавишей F5. Проверить правильность работы проекта и сохранить его.
22
4. Контрольные вопросы
Особенности ввода и вывода массивов?
Какие операторы языка VB 6.0 можно использовать для описания массивов?
Особенность организации цикла при обработке массивов.
Какие приемы программирования используются при обаботке массивов?
Практическая работа №4
Обработка матриц
Продолжительность 2 часа
1. Вопросы (задачи) подлежащие исследованию
Изучить уравнение использования приемов программирования в структурах с вложенными циклами.
Изучить способы ввода и вывода матриц имеющихся в VB 6.0 Изучить правила организации.
Разработать алгоритм решения в соответствии с заданием вложенного цикла с учетом порядка перебора элементов матрицы.
Составить программы решения задач.
2. Краткие теоретические или справочно-информационные материалы
Двухмерная таблица – объект, широко используемый в математике. В линейной алгебре его называют матрицей.
Особое место среди матриц занимают такие, у которых одинаковое число строк и столбцов –n. Такие матрицы называются квадратичные n-порядка. Главной диагональю такой матрицы называют совокупность элементов A(1,1), A(2,2), A(3,3)......., A(n,n).
Для заполнения двумерного массива и вывода его в виде таблицы
.потребуется вложенные циклы. Массивы принято заполнять построчно. Двумерный массив соответствует прямоугольной таблице.
Пример двумерного массива с именем MAS
23
j |
|
|
|
i |
1 |
2 |
3 |
|
|
|
|
1 |
2.1 |
-1 |
2 |
|
|||
|
|
|
|
2 |
0 |
3.3 |
4 |
|
|||
|
|
|
|
3 |
12 |
2.3 |
5 |
|
|||
|
|
|
|
4 |
9 |
1.4 |
6.2 |
|
|||
|
|
|
|
Под общим именем MAS объединено 12 ячеек содержащих однотипные величиныдесятичные числа i, j- индексы . i – номер строки, j- номер
столбца. При обращении к элементам массива указывается имя массива, а в скобках два индекса(номер строки и номер столбца)
MAS(1,1)=2.1
MAS(3,2)=2.3
Массив приведенный в качестве примера, может быть описан следующим образом
Dim MAS (1то 4; 1 то 3)As Single
В данном случае объявлен двумерный массив из 12(4х3) элементов, имя массива MAS, массив объявлен как локальный.
3.Порядок проведения работы
Загрузка VB 6.0(стандартный).
Расположите объекты расположите объекты по форме в соответствии с рисунком.
24
Заполнение и ввод двумерного массива
обнуление
пятерками
Случайными числами (0,9)
Индексом
столбца
Индексом
строки
Ввод через inputbox
0.1 в шахматном порядке
очистить |
|
Выход |
|
|
|
|
|
|
Значение свойств caption формы и кнопок установите в соответствии с рисунком.
Установите значения свойств Name кнопок в соответствии с таблицей.
Объект |
свойство |
Значение свойства |
|
|
|
Командная кнопка |
Name |
CmdNul |
|
|
|
Командная кнопка |
Name |
CmdElive |
|
|
|
Командная кнопка |
Name |
CmdRnd |
|
|
|
Командная кнопка |
Name |
CmdStolb |
|
|
|
Командная кнопка |
Name |
CmdStr |
|
|
|
Командная кнопка |
Name |
CmdInput |
|
|
|
Командная кнопка |
Name |
Cmd01 |
|
|
|
Командная кнопка |
Name |
CmdExit |
|
|
|
Командная кнопка |
Name |
CmdCls |
|
|
|
|
25 |
|
Щелкните два раза по кнопке и войдите в окно программного кода.
Введите программный код для заполнения массива индексом строки нулями и единицами в шахматном порядке, вводом через окно inputbox . ввод массива на форму оформлен в виде отдельной процедуры.
Print_Form
dim x As Integer , y As Integer dim p (1 to 9, 1 to 9) As Integer private sub cmdStr_ckick()
for x=1 to 9 for y=1 to 9 p(x,y)=x
Next y
Next x
Call Print_Form (p(),x,y) End sub
Private sub cmd01_click()
For x=1 to 9 step 1
For y=1 to 9 step 1
If (x Mod2)<>0 and(y Mod2)<>0 Then
P(x,y)=0
Else (x Mod2)=0 and (y Mod2)=0 Then
P(x,y)=0
Else
P(x,y)=1
Next y
Next x
Call Print_Form (p(),x,y)
End sub
Private sub cmdInput_Click()
For x=1 to 9
For y=1 to 9
P(x,y)=val(inputbox ―введите элемент p‖)
Next y
Next x
Call Print_forv(p(),x,y)
End sub
26
Sub Print_Form(mass()as Integer i As Integer, j as Integer)
For i=1 to 9
For j=1 to 9
Print mass (x,y)
Next j
Next i
Next i
End sub
Запустите процедуры клавишей F5.
Напишите процедуру заполнения массива А (9,9) другими способами: пятерками, индексом столбца, произвольными числами с клавиатуры.
Проверьте правильность работы приложения и сохраните в своей папке.
4 .Контрольные вопросы
Указать способы выхода из внутреннего цикла.
Какие основные правила организации вложенных циклов?
Как организовать выход нижней треугольной матрицы в общепринятом порядке.
Как вычислить сумму и число элементов матрицы находящихся под главной диагональю и на ней.
Практическая работа №5
Обработка текстовой информации
Продолжительность 2 часа
1. Вопросы (задачи) подлежащие исследованию
Изучить способы вывода символьных данных и способы обработки символьных данных.
Правила составления программ с использованием символьных данных. Правила замены символьных данных и их описание.
Разобрать алгоритм решения в соответствии с заданным. Составить программу решения задачи.
27
2. Краткие теоретические или справочные – информационные материалы
Значительная часть информации, с которой работает компьютер строковая. Строка это последовательность символов; символ это знак для которого на компьютере установлен определенная ASCII – код(число от до 255). Для определения операции соединения над строками допускаются использование знаков + и &.
При сравнении строк сравниваются их ASCII –коды. Сравнение символьных вершин производится посимвольно слева направо
Встроенные функции обработки строк:
len (x$)-определение длины строки x$;
mid (x$,i [j]) – выделение строки длиной символов начиная с i-го символа
встроке x$;
InStr([i]x$,y$)-отыскание места первого появления строки y$ в x$ начиная с позиции I;
ASC(x$)-выдача цифрового значения которое соответствует коду ASCII первого символа строки x$;
Chr$(i)- выдача символа кода ASCII которого определяется аргументом функции;
Val (x$)- преобразует строку в число;
Str(i$)- преобразует число в строку.
3. Порядок проведения работы
Загрузите VB 6.0 (стандартный).
Разместите на Form 1 текстовые поля две метки и одну кнопку.
Установите значение свойства name для меток lblфраза и lbl гласные соответственно.
Установите значение свойства caption верхней метки. Введите фразу. Установите значение свойства caption формы-гласные.
Установите значение свойства name для текстовых полей txtфраза и txtгласные соответственно.
Установите значение свойства name для командной кнопки cmdПуск. Щелкните 2 раза по кнопке и войдите в окно программного кода.
Введите текст программы которая определяет какие гласные содержатся в введенной фразе на русском языке при этом строчные и прописные гласные различаются.
28
Private Sub cmsПуск_Click()
Dim ВсеГласные As String , фраза As String Dim Встреченные As String, As t string Dim l, i,d As Integer
Все гласные =‖аеѐиоуыэюяАЕЁИОУЫЭЮЯ‖ Фраза =txtфраза.text
ВстреченыеГласные=‖ ‖
E=len(фраза) For i=1 to e t=mid(фраза,e,1)
if Instr(все гласные ,t)<>0 then
if Instr (встречные гласные, t)=0 then ВстреченныеГласные=ВстреченныеГласные+t End if
End if Next i
D=len(ВстреченныеГласные)
Select Case d Case 0
lblГласные.Caption=‖Гласных нет‖ txtГласные.Visible=false
case 1 txtГласные.Visible=true
txtГласные.Caption=‖встреченная гласная‖ txtГласные.txt=встреченные гласные
Case Else txtГласные.Visible=true
lxlГласные.Caption=‖встреченные гласные‖
txtГласные.txt=встреченные гласные end select
end sub
Private sub Form_Activate() txtФраза.SetFocus txtФраза.text=‖ ― txtГласные.text=‖ ―
end sub
Запустите программу клавишей F5.
29
Ввести в окно фразы-данные и изучить результат. Сохранить проект в своей папке.
Сгенерировать слово которое является зеркальным отражением введенного. Расположить на форме два текстовых поля, две метки и одну командную
кнопку.
Установите значение свойства name для текстовых полейtxtword и txtdrow соответственно.
Установите значение свойства name для командной кнопки-cmdZerkalo. Щелкните два раза по кнопке и введите программный код.
Наберите программный код
Private sub cmdZerkalo_Click()
Dim Word As String, Drow As String
Dim c As string
Dim i as Integer, e as integer
Word=txtword.text
E=len(word)
Drow=‖ ―
For i=1 to e step-1 c =mid(word, i,1) drow=drow+c next i txtdrow.text=drow end sub
Запустите программу на исполнение клавишей F5. Введите в окно слово данные и изучите результат. Сохраните проект в своей папке.
4. Контрольные вопросы
Указать способы записи символьных констант. Указать области применения символьных констант.
Какие операции можно выполнять над символьными данными?
Какие специальные функции используются для обработки символьных данных?
30
Практическая работа №6
Использование графических методов для создания изображения
Продолжительность 2 часа
1. Вопросы (задачи), подлежащие исследованию
Изучить возможности VB 6.0 по графической обработке данных. Управление цветностью изображений.
Вывод текстовых данных в графическом режиме. Разработать алгоритмы решения.
Составить программы решения задач.
2. Краткие теоретические справочно-информационные материалы
Графический метод Line служит для создания отрезков, прямоугольников, замкнутых многоугольников в объекте. Он имеет синтаксис
Objekt.Line[Step][x1,y1][Step][x2,y2],[цвет],[B][F]
где: Object – имя объекта, к которому применяется метод; Line – название метода;
Step – ключевое слово, определяющее, что координата вычисляется от текущей позиции;
(x1,y1) – координаты начальной точки; (x2,y2) – координаты конечной точки;
цвет – значение, устанавливающее цвет линии или прямоугольника; В – указывает, что изображается прямоугольник, с заданными левого
верхнего и правого нижнего углов;
F – указывает, что прямоугольник заполняется цветом изображенной линии. Метод Circle изображает на объекте окружность, эллипс или дугу. Он имеет
синтаксис:
Object.Circle[Step](x,y), радиус, [цвет, начало, конец, сжатие]
где: Step – ключевое слово, определяющее, что координаты центра окружности вычисляются от текущей позиции; (x,y) – выражения или константы, определяющие центр окружности, эллипса или дуги;
Радиус – константа, определяющая радиус; Цвет – значение, указывающее цвет контура круга;
Начало, Конец – константы, определяющие начало и конец дуги в радианах; Сжатие – значение, устанавливающее коэффициент сжатия (отношение
размера по оси Y к размеру по оси Х)
31
