Тема уроку: Використання та типові алгоритми опрацювання масивів.
Мета: Навчальна: закріпити та усвідомити раніше засвоєний матеріал і формування нових навичок та вмінь при роботи учнів в інтегрованому середовищі VB, навчити складати програми в різних варіантах, які вимагають від учня перенесення знань і вмінь у нові, нестандартні ситуації, перевірити й оцінити практичні уміння учнів створювати програми на мові програмування VB;
Розвивальна: розвивати творчі здібності учнів, практичні навички роботи з ПК, логічне мислення, пам'ять;
Виховна: виховувати самостійність та відповідальність.
Тип: Урок формування та вдосконалення вмінь і навичок.
Обладнання: ПК учнів з відповідним програмним забезпеченням, комп’ютерна презентація, проектор, дошка.
Структура уроку
1. Організаційний момент.
2. Актуалізація опорних знань та їх коригування. Повідомлення теми й мети.
3. Мотивація навчальної діяльності. Типові алгоритми опрацювання масивів.
4. Вступні вправи (можуть поєднуватись із поглибленням або вивченням невеликих порцій нового матеріалу та ознайомлення з правилами, алгоритмами виконання певних дій).
5. Пробні та тренувальні вправи (використання вивченого в стандартних умовах).
6. Творчі вправи.
7. Підсумки уроку.
8. Домашнє завдання.
1. Організаційний момент.
Привітання. Перевірка присутніх на уроці.
2. Актуалізація опорних знань та їх коригування. Повідомлення теми й мети.
Задача №1. Відома кількість учнів у кожному з К класів. Скласти програму, що визначає, скільки учнів навчається в тих класах школи, у яких не менше, ніж 30 чоловік.
Public Class Form1
Public Mas(11) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Randomize()
For i = 0 To 11
Mas(i) = 20 + Rnd() * 20
ListBox1.Items.Add(Mas(i))
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i, k, X As Integer
For k = 10 To 0 Step -1
For i = 0 To 10
If Mas(i) > Mas(i + 1) Then X = Mas(i) : Mas(i) = Mas(i + 1) : Mas(i + 1) = X
ListBox2.Items.Add(Mas(i))
Next
Next
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
For i = 0 To 11
ListBox3.Items.Add(Mas(i))
Next
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
For i = 0 To 11
If Mas(i) > 30 Then ListBox4.Items.Add(Mas(i))
Next
End Sub
End Class
Задача№2.Відома кількість пилососів у кожному з N магазинів міста. Складіть програму для визначення кількості магазинів, у яких можна купити відразу 120 пилососів.
Public Class Form1
Public Mas(11) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Randomize()
For i = 0 To 11
Mas(i) = 100 + Rnd() * 50
ListBox1.Items.Add(Mas(i))
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i, k, X As Integer
For k = 10 To 0 Step -1
For i = 0 To 10
If Mas(i) > Mas(i + 1) Then X = Mas(i) : Mas(i) = Mas(i + 1) : Mas(i + 1) = X
ListBox2.Items.Add(Mas(i))
Next
Next
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
For i = 0 To 11
ListBox3.Items.Add(Mas(i))
Next
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim s, count As Integer
s = 0 : count = 0
For i = 0 To 11
If Mas(i) >= 120 Then
ListBox4.Items.Add(Mas(i))
s = s + Mas(i)
count = count + 1
End If
Next
TextBox1.Text = s
TextBox2.Text = count
End Sub
End Class
Задача№3. Відома кількість жителів, що проживають у кожному з N сіл. Складіть програму для знаходження кількості сіл , у яких проживає не менше, ніж 500 жителів.
Задача вирішується аналогічно задачі №1.
Задача№4. Відома кількість різних автомобілів, зайнятих перевезенням картоплі. Про кожен автомобіль відомо: кількість мішків картоплі, що він може перевезти за один рейс, а також кількість рейсів, що він має виконати. Складіть програму для визначення максимальної кількості мішків картоплі, що можуть бути перевезені всіма автомобілями разом.
Public Class Form1
Public M(11), R(11), Mas(11) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Randomize()
For i = 0 To 11
M(i) = 10 + Rnd() * 100
ListBox1.Items.Add(M(i))
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Randomize()
For i = 0 To 11
R(i) = 10 + Rnd() * 10
ListBox2.Items.Add(R(i))
Next
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim S As Integer
For i = 0 To 11
Mas(i) = M(i) * R(i)
' ListBox3.Items.Add(Mas(i))
S = S + Mas(i)
Next
TextBox1.Text = S
End Sub
End Class
Задача№5. Відома кількість різних автобусів, що обслуговують автовокзал, кількість пасажирських місць у кожному автобусі, а також щоденна кількість рейсів кожного автобуса. Складіть програму для визначення максимальної кількості пасажирів, яких можуть перевезти всі автобуси разом за тиждень?
Задача№6. Відома кількість книг для кожного класу, а також кількість учнів в класі. Складіть програму для визначення кількості навчальних книг у бібліотеці.
Задача№7. Відома кількість навчальних предметів у школі, а також кількість годин на вивчення кожного предмета. Складіть програму для визначення максимального щотижневого навантаження учнів.
Задача№8 У розчинах А та В міститься по 10 компонентів. Кількість кожного компонента в кожному розчині задано формулами:
A[i]=i*i; B[i]=i+2, де I = 1,2,….10.
Розчини змішали й отримали суміш С. Визначити маси всіх компонентів у суміші та масу суміші С.
Задача №9 Дано натуральне число n та цілі числа a1, a2, … an і b1, b2, … , bn. Визначити значення c1, c2, … , cn, якщо ci = ai + bi.
Задача№10. Протягом 10 років Змій Горинич з їдав різну кількість Царевичів. Визначити найголодніший та найситніший роки, а також загальну кількість жертв.
Public Class Form1
Public G(11) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Randomize()
For i = 0 To 11
G(i) = Rnd() * 20
ListBox1.Items.Add(G(i))
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim imin, Min As Integer
imin = 0
Min = G(0)
For i = 0 To 11
If G(i) < Min Then Min = G(i) : imin = i
Next
ListBox2.Items.Add("голодний місяць=" + Str(imin + 1))
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim imax, Max As Integer
imax = 0
Max = G(0)
For i = 0 To 11
If G(i) > Max Then Max = G(i) : imax = i
Next
ListBox2.Items.Add("їв від пуза=" + Str(imax + 1))
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim Sum As Integer
Sum = 0
For i = 0 To 11
Sum = Sum + G(i)
Next
ListBox2.Items.Add("всього з'їв=" + Str(Sum))
End Sub
End Class
Учитель. Перевіримо рівень ваших знань, здобутих на попередніх уроках за допомогою оцінювання –тестування на комп’ютері. З цією метою ми скористаємося програмою «Контрольно-діагностична система Test-W». Нагадую про основні правила роботи з цією системою.(Коротка інформація про роботу цієї системи та її можливості.) Тести будете здавати кожен за своїм комп’ютером.( Вказую адресу знаходження файлу Test-W). Це дасть змогу одночасно взяти участь у тестуванні всім учням класу та оперативно пригадати попередньо вивчений матеріал. Прошу бути активними та уважними.
