- •Содержание
- •Лабораторна робота № 1. Оболонка системи програмування visual basic. Заняття 1
- •1. Запустите Visual Basic и произведите необходимую настройку.
- •2. Задайте различные свойства формы:
- •3. Запустите программу на выполнение.
- •17. Запустите программу на выполнение и проверьте ее работу.
- •20. Сохраните проект на рабочем диске.
- •Лабораторна робота № 1.Этапи розробки windows-додатків в середовищі програмування visual basic (на прикладі створення простого додатку). Заняття 2.
- •1. Постановка задачи
- •3. Напишите программные коды
- •4. Отладьте6 программу
- •Завдання до самостійної роботи № 1 (в,лс,вс).
- •I. Содержательная постановка задачи.
- •II. Математическая постановка задачи.
- •III. Разработка пользовательского интерфейса.
- •Лабораторна робота № 2. Дані в visual basic. Типи даних.
- •Завдання на самостійну (в) й практичну роботу (вс, лс)
- •Лабораторна робота № 3. Область видимості змінної.
- •ИмяФормы. ИмяПеременной
- •Лабораторна робота № 4. Арифметичні вырази й вбудовані функції visual basic
- •Лабораторная работа № 5. Введення-виведення даних. Функція inputbox и msgbox. Вікно й функція inputbox.
- •Лабораторна робота №6. Проектування додатків vb6, що містять лінійні алгоритмічні структури
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота № 7. Проектування додатків vb6, що містять галужені алгоритмічні структури. Заняття 1
- •Завдання на самостійну (в) й практичну роботу (вс, лс)
- •Лабораторна робота 7. Проектування додатків vb6, що містять галужені алгоритмічні структури. Заняття 2
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №8. Проектування додатків vb6, що містять циклічні алгоритмічні структури. Заняття 1. Цикли з лічильником
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №8. Проектування додатків vb6, що містять циклічні алгоритмічні структури. Заняття 2. Цикли з умовою
- •Завдання на самостійну роботу(в,вс,лс)
- •Завдання на практичну роботу (вс,лс)
- •Лабораторна робота №9. Проектування додатків vb6, що містять вкладені циклічні алгоритмічні структури. Заняття 1.
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №9. Проектування додатків vb6, що містять вкладені циклічні алгоритмічні структури. Заняття 2
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 1.
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 2
- •Завдання на самостійну (в) й практичну роботу (вс,лс)
- •Завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №10. Проектування додатків vb6, у яких дані організовані у вигляді одновимірних масивів. Заняття 3. Сортування елементів масиву. Обмін значеннями.
- •Ilорядок действий
- •Завдання на самостійну роботу(в,вс,лс)
- •Завдання на практичну роботу(вс,лс)
- •Лабораторна робота №11. Проектування додатків vb6, у яких дані організовані у вигляді двовимірних масивів
- •Завдання на самостійну роботу(в, вс,лс)
- •Завдання на практичну роботу (вс,лс)
- •Завдання на самостійну роботу(вс,лс)
- •Лабораторна робота №12. Проектування додатків vb6, у яких дані організовані у вигляді структур. Користувальницький тип даних.
- •VbExclamation, "Столько друзей не бывает"
- •VbExclamation, "Поиск не дал результатов"
- •VbExclamation, "Поиск не дал результатов"
- •Мid(Друзья(j).BirthDay, 4, 2) завдання на самостійну роботу(в,вс,лс)
- •Лабораторна робота №13. Модульне програмування. Заняття 1.
- •Завдання на самостійну (в) та практичну роботу (вс,лс) завдання с13.4
- •Лабораторна робота №13. Модульне програмування. Заняття 2
- •InputВох("Задайте любой вопрос", "????")
- •Завдання на самостійну (в) й практичну роботу (вс,лс)
- •Лабораторна робота № 14. Налагодження програм
- •Лабораторна робота № 15. Обробка символьної інформації.
- •Завдання на самостійну роботу(в,вс,лс)
- •Контрольний опрос на практичному занятті (Лс,Вс).
- •Лабораторна робота № 16. Проектування додатків vb6, у яких дані організовані у вигляді файлів на магнітних носіях.
- •Завдання на самостійну роботу(в,вс,лс)
- •Контрольний опрос на практичному занятті (Вс, Лс)
- •Лабораторна робота № 17. Графіка
Завдання на самостійну роботу(в,вс,лс)
ЗАВДАННЯ 8.4
Постановка задачи СОСТАВИТЬ ПРОГРАММУ, КОТОРАЯ ОПРЕДЕЛЯЕТ СРЕДНЕЕ АРИФМЕТИЧЕСКОЕ ВВЕДЕННЫХ ЧИСЕЛ. КОЛИЧЕСТВО ЧИСЕЛ И САМИ ЧИСЛА ВВОДЯТСЯ С ПОМОЩЬЮ ОКНА INPUTBOX. Как работает приложение, можно понять из рис. 8.3.
Порядок действий
1
.
Расположите на форме одну командную
кнопку, два текстовых поля и две метки
(рис. 8.3).
Рис.8.3
2. Установите значения свойства Name:
для формы —frmЦикл;
для кнопки — cmdЦикл;
для первого текстового поля — txtЧисла;
для второго текстового поля — txtСреднее;
для первого текстового поля установите значение свойства MultiLine —True и значение свойства ScrollBars —2 (Vertical).
Свойство MultiLine, равное True, для текстового поля с именем txtЧисла указывает на то, что текст данного поля разбит на строки, между которыми стоят символы перехода на новую строку и возврата к левому краю текста (коды ASCII этих символов 13 и 10).
Все остальные свойства, определяющие внешний вид проекта, установите по собственному усмотрению.
3. Составьте программный код проекта:
Private Sub CmdЦикл_Click()
Dim N As Integer, i As Integer 'Количество чисел, счетчик цикла
Dim sum As Single, sr As Single 'Сумма, среднее значение
Dim P As String, К As String
txtЧисла.Text ="": txtСреднее.Text = ""
P = InputBox ("Сколько чисел?", "Количество чисел")
N = Val(P) 'Количество чисел
sum = 0 'Начальное значение суммы
For i = 1 To N
K = InputBox("Введите" + Str(i) + "число и нажмите кнопку ОК", _
"Ввод очередного числа")
txtЧисла.Text = txtЧисла.Text + К + Chr(13) + Chr(10)
'Добавление чисел в текстовое поле
sum = sum + Val(K) 'Накопление суммы
Next i
sr = sum / N 'Вычисление среднего
txtСреднее.Text = Str(sr)
End Sub
4. Сохраните проект под именем Лр8_Зад4_Фамилия.
5. Запустите проект на выполнение. Проанализируйте результат.
6. Измените программу так, чтобы выполнялся подсчет среднего арифметического только отрицательных чисел. (Внимание! Программа должна корректно работать при отсутствии отрицательных чисел.)
7. Запустите проект на выполнение. Проанализируйте результат.
8. Сохраните изменения в проекте.
Лабораторна робота №8. Проектування додатків vb6, що містять циклічні алгоритмічні структури. Заняття 2. Цикли з умовою
Оператор циклов с условием Do … Loop При программировании циклов далеко не всегда известно количество повторов. В этих случаях используют циклы с условием, которые в Visual Basic могут быть реализованы с помощью 4-х конструкций оператора Do … Loop
Проверка условия в начале цикла |
Проверка условия в конце цикла |
D o W h i l e < условие > <тело цикла > [ E x i t D o ] L o o p <тело цикла> выполняется, если <условие> истинно, иначе осуществляется переход на оператор, расположенный после Loop. Если первая проверка <условия> даст результат – ложь, то цикл не выполнится ни разу. |
D o < тело цикла> [ E x i t D o ] L o o p W h i l e < условие> <тело цикла> выполняется до тех пор, пока <условие> истинно, иначе выполнение цикла заканчивается. Но хотя бы один раз цикл выполнится в любом случае. |
D o U n t i l e < условие> <тело цикла > [ Ex it D o ] L o o p <тело цикла> выполняется, если <условие> ложно, иначе осуществляется переход на оператор, расположенный после Lo op. Если первая проверка <условия> даст результат – истина, то цикл не выполнится ни разу. |
D o < тело цикла> [ Ex it D o ] L o o p U n t i l e < условие> <тело цикла> выполняется до тех пор, пока <условие> ложно, иначе выполнение цикла заканчивается. Но хотя бы один раз цикл выполнится в любом случае. |
ЗАВДАННЯ 8.5.
Постановка
задачи ОБЧИСЛИТИ
СУМИ ЕЛЕМЕНТІВ РЯДІВ, ЩО СХОДЯТЬСЯ, ІЗ
ТОЧНІСТЮ
ТА ОБЧИСЛИТИ КІЛЬКІСТЬ ЕЛЕМЕНТІВ РЯДУ
Порядок действий
Расположите на форме две командные кнопки, пять текстовых полей и метки к ним в соответствии с рис. 8.4.
Рис. 8.4
Установите значения свойств объектов в соответствии со следующей таблицей (табл. 10.3):
Таблица 8.3
Объект |
Свойство |
Значение свойства |
Текстовые окна |
Name |
Textogr, Textk, Textr, Texta |
Текстовое окно
|
Name MultiLine |
Texty True |
Метки |
Caption |
в соответствии с рис. 8.1. |
Командная кнопка
|
Name Caption |
Command1 Розрахунок |
Командная кнопка
|
Name Caption |
Command2 Вихід |
Разберите программный код, а затем наберите его:
Dim r, k, y, ogr, vr
Dim i As Integer
Private Sub Command1_Click()
ogr = Val(Textogr.Text)
k = Val(Textk.Text)
a = Val(Texta.Text)
r = Val(Textr.Text)
TextY.Text = ""
y = r + (3 * k) / (6 * a ^ 2)
TextY.Text = Str(r) + "+" + Str((3 * k) / (6 * a ^ 2)) + "+"
i = 2
Do
vr = ((-1) ^ (i + 1)) * (k / (a ^ (2 * i)))
If Abs(vr) <= ogr Then Exit Do
y = y + vr
TextY.Text = TextY.Text + ")+(" + Str(vr)
i = i + 1
Loop
Print “y=”; y
End Sub
Private Sub Command2_Click()
End
End Sub
Запустите проект на выполнение. Проанализируйте результат.
Изменяя поочередно исходные данные и ограничитель получите результат и проанализируйте его.
Внесите в знаменатель расчет вакториала
Проанализируйте результат.
Сохраните проект и форму в папке ЛАБ8 с именами Лр8_Зад5_Фамилия.
Спеціальні завдання
ЗАВДАННЯ 8.6
Постановка задачи У ПРОЕКТІ ПЕРЕДБАЧИТИ МОЖЛИВІСТЬ РОЗРАХУНКУ СЕРЕДНЬОЇ КІЛЬКОСТІ ЛОКОМОТИВІВ У РЕМОНТІ ЗА ЗАДАНИЙ ПЕРІОД.
Вихідні дані: Місяць року для якого треба одержати результат та загальна кількість локомотивів.
Результат. Вивести на формі загальну кількість локомотивів, кількість локомотивів, які експлуатуються, резерв і кількість локомотивів у ремонті. Результати розрахунків записати у файл. Обчислити середню кількість локомотивів у ремонті за заданий період — один або декілька місяців поточного року.
Обов'язкові умови. Введення, розрахунки і виведення даних повинні здійснюватися при натисканні відповідних кнопок. Середню кількість локомотивів у ремонті за заданий період вивести на окремій формі.
Порядок виконання роботи:
Увійдіть в середовище Visual Basic. Відкрийте збережений проект Лр7_Зад3_P_Прізвище.
Змініть проект згідно рис. 8.5
2.1. Використайте вже створені об'єкти форм FrmIshDan і FrmRez.
2.2. Додайте об'єкт CommandButton. Для нього встановіть властивість Caption –Вибір місяця, властивість Name – CmdМісяць.
2.3.
Додайте об'єкт ComboBox
(список, що розкривається). Змініть
властивість Name
об’єкта ComboBox
на
Combo_month.
Щоб розмістити значення в списку під час розроблення, виконайте такі дії:
Виділіть властивість List (Список).
У правому стовпці властивості з'явиться кнопка, що містить направлену вниз стрілку. Натисніть цю кнопку. Відкриється список, що дозволяє вводити значення.
Введіть перше значення списку(січень).
Для переходу на новий рядок списку натисніть комбінацію клавіш <Ctrl>+<Enter>.
Введіть наступне значення списку.
Щоб при появі форми на екрані в списку за попереднім визначенням було виділене певне значення, використовується властивість ListIndex, яка доступна тільки під час виконання.
Пояснення. У полі списку відображуватиметься перший елемент списку (січень). Якщо для списку, що розкривається, не встановлене використовуване за попереднім визначенням значення, то при появі його на екрані в полі, призначеному для введення значення списку, відображається текст Combol, що задається властивістю Text і що є ім'ям об'єкта. Якщо ви хочете, щоб це поле при появі списку на екрані було порожнім або містило заданий вами текст, виділіть властивість Text і в правому стовпці видаліть інформацію, залишивши поле порожнім, або введіть необхідний текст.
Рис. 8.5. Зовнішній вигляд форми (FrmIshDan)
3. Змініть код проекту згідно з приведеним нижче:
Dim a As Single
Private Sub Cmd_Расчет_Click()
TxtAll.Text = InputBox("введіть загальну кількість локомотивів", _
"введення загальної кількості локомотивів", "", 2000, 2000)
If Combo_month.ListIndex <= 3 Or Combo_month.ListIndex >= 9 And Combo_month.ListIndex <= 11 Then
TxtExpluat.Text = 40 * TxtAll.Text \ 100
TxtRezerv.Text = 10 * TxtAll.Text \ 100
TxtRemont.Text = TxtAll.Text - TxtExpluat.Text - TxtRezerv.Text
Else
TxtExpluat.Text = 1.5 * 40 * TxtAll.Text \ 100
TxtRezerv.Text = 10 * TxtAll.Text \ 100
TxtRemont.Text = TxtAll.Text - TxtExpluat.Text - TxtRezerv.Text
End If
a = TxtRemont.Text
Open "dan.txt" For Append As #1
Write #1, a
Close #1
FrmRez.Visible = True
FrmRez.Cmd_Среднее.SetFocus
End Sub
Private Sub Cmd_Выход_Click()
Kill ("dan.txt")
End
End Sub
Private Sub Cmd_Месяц_Click()
MsgBox "Виберіть місяць зі списку та натисніть Розрахунок "
Combo_month.SetFocus
End Sub
Private Sub Form_Load()
Combo_month.ListIndex = 0
End Sub
Private Sub TxtAll_LostFocus()
If Not IsNumeric(TxtAll) Then
MsgBox "Невірне значення: не цифра"
TxtAll.SetFocus
End If
End Sub
Спроектуйте форму FrmRez згідно з рис.8.6.
Рис. 8.6. Зовнішній вигляд форми (Frmrez)
Додайте такий код для елементів цієї форми:
Dim k As Single
Dim s As Single
Dim a As Single
Private Sub Cmd_Середнє_Click()
Open "dan.txt" For Input As #1
k = 0
s = 0
Do
Input #1, a
s = s + a
k = k + 1
Loop While Not EOF(1)
Close #1
Text1.Visible = True
Text1.Text = s \ k
End Sub
Private Sub Cmd_Продовження_Click()
frmIshDan.TxtExpluat.Text = ""
frmIshDan.TxtRezerv.Text = ""
frmIshDan.TxtRemont.Text = ""
frmIshDan.TxtAll.Text = ""
MsgBox "Виберіть місяць зі списку та натисніть Розрахунок "
frmIshDan.Combo_month.SetFocus
End Sub
6. Запустіть проект на виконання:
6.1. На основній формі FrmIshDan натисніть кнопку Вибір місяця. У віконці, що з’явилося, натисніть OK.
6.2. Оберіть зі списку місяць.
6.3. Натисніть кнопку Розрахунок.
6.4. Введіть за допомогою вікна, що з’явилося, загальну кількість локомотивів, натисніть OK.
6.5. В вікні Результати натисніть кнопку Розрахунок середньої кількості в ремонті.
6.6. Отримавши в цьому вікні значення, Ви або натискаєти кнопку Продовження та повторюєте п.п.6.2-6.5, або натискаєте кнопку Вихід на основній формі FrmIshDan.
7. Перевірте роботу програми з різними наборами даних.
8. Збережіть проект та форми в папці ЛАБ8 з іменами Лр8_Зад6_P_Прізвище, Лр8_Зад6_F1_ Прізвище та Лр8_Зад6_F2_ Прізвище.
