Цикл уроків з програмування на мові Visual Basic. 5 частина. Масиви. Включає в себе уроки з таких тем: Поняття масиву. Прості та структуровані типи мовою програмування. Типові задачі по масивам. Двовимірні масиви. Практична робота « Побудова алгоритмів з одновимірними і двовимірними масивами.» Лабораторна робота « Реалізація алгоритмів з одновимірними і двовимірними масивами у вигляд і проектів»
ТЕМА: Поняття масиву.
Мета: навчальна - познайомити учнів з поняттям масиву в Visual Basic , показати способи введення елементів в масив, навчити створювати простіші програми з масивами, розвиваюча - вчити аналізувати й порівнювати, виховна - виховувати культуру самостійної роботи за ПК .
ХІД УРОКУ:
Відмічаються відсутні, готуються місця до роботи.
2. Актуалізація опорних знань.
Мозковий штурм:
1. Назвіть команду присвоювання.
3. Новий матеріал. Міні-бесіда
Раніше розглядалися змінні простих типів, які кожного поточного моменту могли набувати тільки одного значення. При розв’язуванні різних задач часто потрібно мати не одне значення, а відразу кілька. Для реалізації таких потреб у VB використовуються складні типи дані, одним із яких є масив.
Масив- це впорядкований набір елементів одного типу зі спільним ім’ям, яке дає користувач.
Кожний елемент масиву має свій номер ( індекс), за допомогою якого його можна знайти в масиві і працювати з ним. Причому таких номерів може бути декілька.
Кількість індексів визначає розмірність масиву . Ми будемо розглядати одновимірні та двовимірні масиви. Кількість елементів визначає розмір масиву.
Призначення масиву – зберігати в оперативній пам’яті велику кількість даних і надавати прямий доступ до кожного з них.
Дії з масивами:
1.Одновимірний масив
Одновимірний масив – це масив з одним елементом. Доступ до елемента масиву дає змінна з індексом.
Наприклад: А(0), А(1),…, А(5) – це 6 змінних, що зберігають 6 елементів деякого одновимірного масиву з назвою А.
Нумерація елементів у масиві зазвичай починається з 0. Оскільки нумерація з 0 є незвичною. То нульовий елемент можна до уваги не брати. Нульовий елемент існуватиме в пам’яті комп’ютера, але нічого не зберігатиме.
Графічно масив А , що містить 5 чисел і нульовий елемент, можна зобразити так
А(0) А(1) А(2) А (3) А(4) А(5)
|
7 |
8 |
6 |
9 |
2 |
В одновимірних масивах в оперативній пам’яті можна зберігати такі дані:
1. елементи числової послідовності
2. значення функції
3. список учнів
4. оцінки учнів за контрольну
5. значення температури повітря
6. доходи фірми протягом певного періоду
Оголошення масивів.
Масиви оголошуються для резервування ділянки в оперив ній пам’яті комп’ютера.
Способи оголошення:
Створення і опрацювання одновимірних масивів.
1.Занесення даних до масиву за допомогою команди присвоєння або InputBox. Елементи даних можна заносити до масиву з раніше створеного списку або з файлу даних тощо.
Якщо відомі елементи масиву, то їх вводять за допомогою команди присвоювання елементу масиву певного значення.
Назва масиву ( і-елемент)=значення
Якщо значення елементів масиву вводяться з клавіатури, то елементи вводять в циклі за допомогою команди Inputbox
For i = 1 To т
Назва масиву ( і-елемент)=Inputbox (« Введіть елемент массиву»)
Елементи масиву виводяться текстові поля, списки, файли даних, консольне вікно.
Опрацьовують за допомогою команд циклу For ( рідше While).
Якщо значення елементів масиву створюються за формулою, то використовуємо такі команди
For i = 1 To т
Назва масиву ( і-елемент)= формула
Задача 1.
Нехай у деякому шоу конкурс виконаців оцінюють 6 суддів за 10бальною системою. Ввести оцінки суддів у масив, обчислити і вивести суму елементів масиву у текстове поле.
Private Sub Command2_Click()
Dim A(6) As Integer
Dim i, s As Integer
A(1) = 7: A(2) = 8: A(3) = 9: A(4) = 8: A(5) = 8: A(6) = 9
s = 0
For i = 1 To 6
s = s + A(i)
Debug.Print i, A(i)
Next i
Debug.Print "s=" + Str(s)
End Sub
Якщо дані необхідно вводити из клавіатури, то
Використовуємо такі команди
A(i) = InputBox(" Введіть бал " + Str(i) + "-го судді")
Задача 2.
Є 2 10-елементних масиви, кожний з яких створюється за формулами:
A(i)=1+sin i
B(i)=1+cosi
Створити 3-ий масив, елементи якого є сумами елементів перших 2-x, обчислити суму елементів створенного массиву
Private Sub Command1_Click()
Dim A(10) As Single, B(10) As Single, c(10) As Single
Dim s As Single
s = 0
For i = 1 To 10
A(i) = 1 + Sin(i)
B(i) = 1 + Cos(i)
c(i) = A(i) + B(i)
List1.AddItem Format(c(i), "00.00")
s = s + c(i)
Next i
Text1 = Str(s)
End Sub
4. Робота на комп’ютері. Введення задач , створення проектів
5. Підсумок уроку.
Метод « Уявний мікрофон»
2. Розв’язати такі завдання:
А) описати тип масиву, що містить прізвища учнів вашого класу
Б) описати тип масиву, що містить назви днів тижня
3. Задача.
У результаті спостережень метеорологи прогнозують,що середньодобова температура повітря в березні буде такою t=0.5 n-5, де n – від 1 до 31 . побудувати масив і вивести на екран.
ТЕМА: Прості та структуровані типи мовою програмування. Типові задачі по масивам.
Мета: навчальна – навчити учнів розв’язувати задачі з використанням масивів, розвиваюча – розвивати інформаційну компетентність , виховна – виховувати культуру роботи в групі .
Хід уроку:
І. Організаційний момент.
Перевірка д/з. методичний прийом « Рецезія». Учні демонструють свої програми,а інші рецензують їх за таким планом: оригінальність, доцільність, логіка, правильність.
ІІ.АОЗ.
Бліц-опитування
ІІІ. Новий матеріал. Міні-бесіда.
Типові задачі по масивам ( одновимірним).
Для двовимірних масивів аналогічно.
Алгоритм розв‘язування :
Визначають за допомогою метода перегляду і порівняння всіх елементів
Алгоритм розв‘язування :
Аналогічний алгоритм для пошуку найменшого елементу масиву.
3. Знаходження елементу масиву, який задовольняє певній умові.
Алгоритм розв‘язування :
IV. Закріплення вмінь.
Задача 1.
Нехай дохід деякого підприємства за n =12 місяців описується 12 цілими числами. Додатнє число означає, що підприємство мало прибуток, від’ємне – збиток. Визначити суму прибутків.
Число доходу створюється за формулою a(i)=100000 sin і, де і=1,2, ..n
Private Sub Command1_Click()
Dim A(12) As Single
Dim s As Single
Dim i As Integer
s = 0
For i = 1 To 12
A(i) = 100000 * Sin(i)
If A(i) > 0 Then s = s + A(i)
Next i
Text1 = Str(s)
End Sub
Задача 2.
Який найбільший прибуток мало підприємство і в якому місяці?
Private Sub Command1_Click()
Dim A(12) As Single
Dim max As Single
Dim i, mes As Integer
For i = 1 To 12
A(i) = 100000 * Sin(i)
Next i
max = A(1)
mes = 1
For i = 2 To 12
If A(i) > max Then
max = A(i)
mes = i
End If
Next i
If max > 0 Then
Print max, mes
Else: Print "Прибутків не було"
End If
Відповідь 98935,83 8
V. Робота на комп’тері.
Введення задач на комп’ютері.
Рефлексія
VІІ. Домашнє завдання.
Переробити задачі, розв’язані в класі таким чином, щоб вони:
ТЕМА: Двовимірні масиви.
Мета: навчальна – засвоїти поняття « двовимірний масив» (таблиця), «елемент масиву»; розглянути приклади та двовимірних масивів; навчитись описувати масиви; розвивати в учнів увагу, логічне мислення, збагатити словник новими термінами; виховна – виховувати самостійність і відповідальність за свою роботу .
Хід уроку:
І. Організаційний момент.
Перевірка д/з.
«Мозковий штурм».
ІІ. АОЗ.
Інколи потрібно зводити різні дані, такі, як
Для зберігання та аналізу таких даних використовується таблиця даних, яка називається двовимірним масивом.
ІІІ. Новий матеріал.
Спосіб організації даних, при якому кожен елемент визначається номером рядка та номером стовпця, на перетині яких він розташований, називається двовимірним масивом або таблицею.
Візуально масив можна записати так:
B (1,1) B(1,2) ….B (1,n)
B(2,1) B( 2,2) …...B (2,n)
……
B (m,1) B (m,2) …B(m,n)
Елементи двовимірних масивів мають 2 індекси ( номери). Перший індекс – це номер рядка, а другий - номер стовпця , на перетині яких розміщений елемент. Індекси записують у круглих дужках і відокремлюють комою.
Наприклад: B(1,1) – елемент, який розташований на перетині 1 рядка і 1 стовпця .
Де розташований B(5,10), B ( k,p)?
Оголошення масивів.
Dim назва масиву ( максимальне значення 1 індекса, максимальне значення 2 індекса) as тип даних
Створення двовимірних масивів - зручно використовувати цикл For ... Next Для кожного індексу потрібно використовувати окремий цикл зі своєю змінної -лічильником. Цикли будуть вкладені: один вкладений в інший. При цьому один цикл стане зовнішнім, а інший внутрішнім.
For i = поч..значення To кінцеве значення
For j = початкове значення To кінцеве значення
Серія команд
Next j
Next i
IV. Закріплення вмінь.
Усно:
А 2 5 6
1 4 8
3 0 9
Обчислити значення S= А (1,1) +А(1,2) + А (1,3)
S = А (1,1) +А (2,1) +А (3,1)
S=0: for i=1 to3
S= S +A (2,i)
Next i
Задачі на впорядкування даних в масиві.
Згадаємо задачу на обмін значень змінних а і b.
С=а
A=b
B=c
Словесний алгоритм розв'язування задачі на впорядкування:
Задача. Впорядкувати елементи масиву за зростанням . Елементи масиву – 3,5,6,4,2,1
Private Sub Command1_Click()
Dim a(6), c, i, j As Integer
a(1) = 3: a(2) = 5: a(3) = 6: a(4) = 4: a(5) = 2: a(6) = 1
For i = 1 To 6
List1.AddItem a(i)
Next i
For j = 1 To 6 - 1
For i = 1 To 6 – j
If a(i) > a(i + 1) Then
c = a(i)
a(i) = a(i + 1)
a(i + 1) = c
End If
Next i
Next j
For i = 1 To 6
List2.AddItem a(i)
Next i
End Sub
V. Робота на комп’тері.
Введення задач на комп’ютері.
Гра « Так-ні»
VІІ. Домашнє завдання.
Опрацювати конспект, переробити задачу на впорядкування даних в масиві за спаданням.
Задача . Створити 2-вимірний масив D з такими елементами d=sin (i+j) i=1,2,3,….5, j=1,2,3,….5. Обчислити суму додатніх елементів.
Тема: Практична робота « Побудова алгоритмів з одновимірними і двовимірними масивами.»
Мета: навчитися використовувати теоретичний матеріал на практиці, перевірити вміння створювати програму для розв’язання поставленої задачі та отримувати результат на комп’ютері в програмному середовищі, розвивати логічне мислення, виховувати бережливе ставлення до комп’ютерної техніки.
Хід уроку:
І. Організаційний момент.
Підготовка робочих місць, привітання учнів.
ІІ. Актуалізація знань .
Гра « Закінчи речення» по темі масиви:
Розв’язування завдань з масивами:
1. Написати команди:
А) П’ятому елементу одновимірного масиву А присвоїти значення 10.
Б) Збільшити на 1 елемент двовимірного масиву, який знаходиться в четвертому рядку на четвертому місці.
В) Одновимірні масиви C,D,F , у яких по 30 елементів типу Variant.
ІІІ. Практична робота. Робота на комп’ютері.
Повторення правил з т/б.
Варіант 1.
1. Описати масив:
2. Написати команди, які виконують такі дії:
3. Який масив буде створено командою
For i=1 to 5
A(i)=i+2
Next i
Записати всі значення.
4. Запустіть систему програмування Microsoft Visual Basic, вибравши тип проекту Standard EXE. . Виконайте одне з завдань. Здайте роботу вчителю.
Задачі.
1. Всі елементи одновимірного масиву зменшити на 2. ( на 4-6 б)
2. Знайти кількість елементів двовимірного масиву, які менші 15.( на 7-9 б)
3. Знайти різницю найбільшого та найменшого елементів масиву. ( на 10-12 б).
Варіант 2.
1. Описати масив:
2. Написати команди, які виконують такі дії:
3. Який масив буде створено командою
For i=1 to 6
A(i)=i*2
Next i
Записати всі значення.
4. Запустіть систему програмування Microsoft Visual Basic, вибравши тип проекту Standard EXE. . Виконайте одне з завдань. Здайте роботу вчителю.
Задачі.
1. Всі елементи одновимірного масиву збільшити в 3 рази. ( на 4-6 б)
2. Знайти суму елементів двовимірного масиву, які більші за 5. ( на 7-9 б)
3. Поміняти місцями найбільший і найменший елементи двовимірного масиву.
( на 10-12 б).
ІV . Підсумок уроку.
Перевірка практичної роботи, виставлення оцінок, підведення підсумків.
V. Домашнє завдання. Повторити конспект.
Скласти програму свого рівня з іншого варіанту.
Тема: Лабораторна робота « Реалізація алгоритмів з одновимірними і двовимірними масивами у вигляд і проектів»
Мета: навчаюча: набути практичних навиків по створенню програм з масивами в VB, розвиваюча: розвиток вміння пов'язувати вивчення нового матеріалу з уже відомими фактами, виховна: виховання самостійності, критичності і відповідальності за виконувану роботу.
ХІД УРОКУ:
І. Організаційний момент. Актуалізація знань
Підготовка робочих місць, привітання учнів.
Гра « Ти- мені, я- тобі». Учні задають питання з теми «Масиви» один одному.
ІІ. Практична робота.
Повторення правил з т/б.
Робота на комп’ютері.
1. Запустіть систему програмування Microsoft Visual Basic, вибравши тип проекту Standard EXE.
На достатній рівень
1. Відома температура хворого за 20 днів перебування в лікарні. Чи можна його виписати, якщо для цього потрібно, щоб не менше половини всіх днів, коли у нього була температура нижче 37, припадала на другу половину його перебування в лікарні.
2 . Дан список оцінок з математики 30-ти абітурієнтів. Кого більше відмінників, хорошистів, двієчників?
3. Відомо кількість деталей, зроблених кожним з 40-ка робітників. Скільки робочих мають продуктивність нижче середньої?
На високий рівень
1. Дано заміри температур за три літні місяці. Видати на друк назва місяця з найтеплішою середньомісячною температурою.
2. Дана таблиця середньодобових температур за 28 днів лютого. Холодним вважається тиждень, в якій більшість складають дні з від’ємною температурою. Місяць вважається холодним, якщо більшість тижнів були холодними. Холодним або теплим був лютий?
3. Відомі температури кожного дня травня. Знайти різницю між температурами найтеплішого і найхолоднішого дня. Скільки днів минуло між першим найтеплішим днем і останнім найхолоднішим днем травня?
ІІІ. Підсумок уроку.
Перевірка лабораторної роботи, виставлення оцінок, підведення підсумків.
ІV. Домашнє завдання.
Повторити конспект.
Скласти програму свого рівня .