ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.08.2020
Просмотров: 2517
Скачиваний: 4
Рис.3.3 Результат роботи програми
Приклад 3.3.3 Співробітникам фірми виплачується річна премія в залежності від стажу роботи:
-
до 1 року – премії немає
-
від 1 до 5 років – 10% від зарплатні
-
більш ніж 5 років – 20% від зарплатні
Обчислити розмір премії робітника, якщо його зарплатня дорівнює Z , а стаж роботи – К.
Програма має вигляд:
Sub Премія()
Dim z As Integer, k As Single, pr As Single
z = InputBox("Введіть зарплатню:")
k = InputBox("Введіть стаж роботи :")
Worksheets("Лист1").Cells(2, 1).Value = z
Worksheets("Лист1").Cells(2, 2).Value = k
Select Case k
Case Is < 1
pr = 0
Case 1 To 5
pr = z * 0.1
Case Is > 5
pr = z * 0.2
End Select
MsgBox ("ПРЕМІЯ =" & CStr(pr))
End Sub
Рис. 3.4 Результати роботи програми
4 Лабораторна робота №4
Тема: створення форм користувача для введення і виведення даних.
Мета роботи: навчитися створювати форми з різними елементами керування.
4.1 Створіть форми для введення, виведення даних та розв’язування тих трьох задач, що Ви виконували в попередній лабораторній роботі.
При створенні форм використовуйте такі елементи керування:
-
текстове поле;
-
командна кнопка.
4.2 Контрольні питання
-
Поняття форми, властивості і методи форми.
-
Елемент керування текстове поле, його властивості, методи і події, що з ним пов'язані.
-
Елемент керування командна кнопка, його властивості і події, що із ним пов'язані.
-
Елемент керування напис, його властивості.
4.3 Приклад виконання лабораторної роботи
Задача: задані три числа – довжини сторін трикутника. Перевірити, чи можуть ці числа бути довжинами сторін трикутника, і якщо можуть, то обчислити площу трикутника по формулі Герона. В іншому випадку програма повинна видавати повідомлення про помилку.
Рішення: для організації введення даних і виведення результатів створимо форму, в якій розмістимо такі елементи керування:
-
Написи Label1, Label2, Label3, Label4, Label5, у яких властивості Caption змінені на тексти, що зазначені на мал. 4.1
Крім того, у написів змінена властивість Font - шрифт, його розмір – 10, і жирність – Bold. Щоб напис виводився в декількох рядках, властивості MultiLine=True, WordWrap=True. -
Текстові поля TextBox1, TextBox2, TextBox3 для введення трьох чисел – довжин сторін трикутника. У цих об'єктів також змінена властивість Font.
-
Текстове поле TextBox4, розташоване під написом « Ответ: », призначене для виведення результату. У цьому полі буде записуватися площа трикутника або повідомлення про те, що трикутник не існує. Змінена властивість Font, властивості MultiLine=True, WordWrap=True, щоб виводити в полі текст у декілька рядків.
-
К

омандна кнопка CommandButton1, з якою зв'язується процедура введення чисел, перевірки існування трикутника й обчислення його площі. У процесі конструювання змінена властивість Caption на текст, що зазначений на кнопці, властивості MultiLine=True, WordWrap=True.
Рис. 4.1 Форма в процесі роботи.
На рис.4.1 наведена форма в процесі роботи. Користувач увів числа в текстові поля і клацнув на кнопці “Вычислить площадь треугольника”. В текстовому полі праворуч унизу – результат роботи програми.
Текст програми для рішення задачі, пов'язаний із командною кнопкою:
Sub CommandButton1_Click()
Dim a As Single, b As Single, c As Single, s As Single, p As Single
If IsNumeric(TextBox1. Text) Then
a = TextBox1. Text
Else
MsgBox "У полі 'а=' повинно бути число", vbCritical + vbOKOnly
TextBox1. SetFocus
End If
If IsNumeric(TextBox2. Text) Then
b = TextBox2. Text
Else
MsgBox "У поле 'b=' повинно бути число", vbCritical + vbOKOnly
TextBox2. SetFocus
End If
If IsNumeric(TextBox3. Text) Then
c = TextBox3. Text
Else
MsgBox "У поле 'c=' повинно бути число", vbCritical + vbOKOnly
TextBox3. SetFocus
End If
' Перевіримо, чи можуть числа бути довжинами сторін трикутника
If (a + b > c) And (a + c > b) And (b + c > a) Then
' Це трикутник, обчислюємо його площу по формулі Герона
p = (a + b + c) / 2
s = Sqr(p * (p - a) * (p - b) * (p - c))
TextBox4. Text = "Площа трикутника = " & CStr(s)
Else
TextBox4. Text = "Введені числа не можуть бути довжинами сторін _ трикутника! "
End If
End Sub
5 Лабораторна робота №5
Тема: Функції користувача.
Мета роботи: навчитися створювати функції користувача для найпростіших обчислень.
5.1 Завдання: Написати функції користувача для обчислення по заданих формулах. Написати підпрограму для виклику функції й обчислити Y, Z для введеного значення Х.
Варіанти:
1. Y=
,
Z=![]()
2. Y=
, Z=![]()
3. Y=
, Z=![]()
4.
, ![]()
5.
6.
7.
8.
9.
10.
11.
12.
5.2 Написати функції користувача для одержання всіх розрахункових значень для списку, створеного в індивідуальному завданні, згідно варіанту.
5.3 Контрольні питання:
-
1.Опишіть структуру функції користувача.
-
2. Правила передачі параметрів. Типи параметрів.
-
3. Правила виклику функції.
-
4. Чим відрізняється функція від процедури?
5.4 Приклад виконання лабораторної роботи.
Задача 5.4.1. Написати функцію користувача для обчислення функції по заданій формулі:
Т![]()
екст
програми-функції:![]()
Function Z(x As Single) As Single
Z = (1 + x) /sqr (1 + (2 + x + x ^ 2)
End Function
Sub Програма_для_виклику_функції()
Dim x As Single, y As Single
x = InputBox("Введіть значення Х")
y = Z(x)
Worksheets("Лист1").Cells(2, 1).Value = x
Worksheets("Лист1").Cells(2, 2).Value = y
End Sub
Рис. 5.1 Результат роботи програми
Задача 5.4.2: Написати функцію користувача для обчислення функції по заданій формулі:
Текст
програми-функції:![]()
Function Z1(x As Single) As Single
If x <= 0 Then
Z1 = (3 + Sin(2 * x) ^ 2) / (1 + Cos(x) ^ 2)
Else
Z1 = 2 * Sqr(1 + 2 * x)
End If
End Function
Рис. 5.2 Результат роботи програми
6 Лабораторна робота №6
Тема: Використання циклів для обробки даних у таблиці.
Мета роботи: навчитися використовувати оператори For–Next, Do Loop, For Each, умови While та Until
6.1 Виконайте наступні завдання, написавши для кожного з них окрему процедуру згідно варіанта.
Варіант 1
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ -1; 1 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
Напишіть програму, що для чисел, отриманих у попередній задачі, знаходить середнє значення, записує його на Лист Excel і виділяє кольором числа, які більш на 5% ніж обчислене середнє значення.
-
Серед значень Z із діапазону знайдіть перше, яке виявиться більше відповідного йому значення Y.
Варіант 2
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ -1; 2 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
У клітині D1 знаходиться деяке число М. Знайдіть в діапазоні, отриманому в попередній задачі, усі клітки, що містять значення, рівні М, та виділіть їх кольором.
-
Серед значень з цього ж діапазону знайдіть перше додатне значення Z і те значення Х, що йому відповідає.
Варіант 3
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ -2; 1 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
Для кожного стовпця з діапазону, отриманого в попередній задачі, обчисліть найменше додатне значення. Запишіть їх на Лист Excel під кожним стовпчиком.
-
Для стовпця Z з того ж діапазону підрахувати кількість від’ємних елементів, розташованих до першого додатного.
Варіант 4
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ -2; 3 ] із кроком 0.15, а Y і Z обчислюються за формулами:
-
Знайдіть найбільше значення Z з діапазону, отриманого в попередній задачі, і підрахуйте кількість кліток, що містять таке ж значення.
-
Знайдіть суму тих значень Y, яким відповідають додатні значення змінної Z.
Варіант 5
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ 0; 3 ] із кроком 0.1, а Y і Z обчислюються за формулами:
![]()
-
Напишіть процедуру, що знаходить середнє значення всіх чисел, отриманих у попередній задачі, а потім суму тих значень Y з діапазону, що більше середнього.
-
Підрахуйте, скільки разів в отриманому діапазоні значення Z змінюють свій знак із плюса на мінус.
Варіант 6
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ –30, 10 ] із кроком 1, а Y і Z обчислюються за формулами:
-
Напишіть процедуру, яка в діапазоні з попередньої задачі, заміняє кожне від’ємне значення Z на нуль і підраховує загальну кількість таких чисел.
-
Знайдіть суму цілих значень змінної Y, отриманих у завданні 1.
Варіант 7
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ 0, 5 ] із кроком 0.2, а Y і Z обчислюються за формулами:
-
Напишіть процедуру, що обчислює для кожного стовпця діапазону з попередньої задачі, кількість чисел, більших, ніж 2. Запишіть отримані результати на Лист Excel під кожним стовпчиком.
-
Якому значенню Х відповідає перше додатне значення Z?
Варіант 8
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ 0, 4 ] із кроком 0.2, а Y і Z обчислюються за формулами:
-
Напишіть процедуру, яка обчислює для діапазону з попередньої задачі кількість елементів, більших, ніж 1.5 та виділяє ці елементи кольором.
-
Знайдіть перше значення Х, для якого і Y, і Z водночас будуть менші, ніж 1.5.
Варіант 9
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ -2; 1 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
Напишіть процедуру, яка для значень Y і Z з діапазону попередньої задачі підраховує кількість пар одного знака.
-
Знайдіть суму значень Z, розташованих до першого додатного.
Варіант 10
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ –3; 3 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
Напишіть процедуру, яка до всіх позитивних значень Z додає 1, а від усіх від’ємних значень Z віднімає 1.
-
Знайдіть максимальне значення Z і суму тих значень Z, що розташовані до максимального.
Варіант 11
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ –1; 4 ] із кроком 0.2, а Y і Z обчислюються за формулами:
-
Знайдіть найбільше і найменше значення Y і поміняйте їх місцями.
-
Виділіть кольором ті рядки, у яких розташовані значення Z, менші, ніж 0,2.
Варіант 12
-
Занесіть на Лист Excel у 3 стовпці значення Х, Y і Z, якщо Х приймає значення з інтервалу [ –1; 2 ] із кроком 0.1, а Y і Z обчислюються за формулами:
-
Підрахуйте кількість рядків з діапазону, отриманого в попередній задачі, в яких X<Y<Z .
-
Виділите кольором ті значення Z, що повторюються. Якщо таких значень немає, виведіть відповідне повідомлення.
6.2 Контрольні питання
-
Оператор циклу FOR – NEXT і його робота.
-
Що таке параметр циклу?
-
Оператори циклу з передумовою і з післяумовою.
-
Логічні операції для запису умов.
-
Що таке вкладені цикли, яка їхня структура?
-
Як здійснюється достроковий вихід з циклу7
-
Які види операторів циклу Ви ще знаєте?
-
Об'єкт Cells, звертання до нього і його властивості.
-
Алгоритм обчислення суми і кількості.