Автор конспекта:
Автор(ы): — Стародубцева Галина Васильевна
Место работы, должность: — МОУ «СОШ с. Берёзовая Лука Духовницкого района Саратовской области»
Регион: — Саратовская область
Характеристики урока (занятия) Уровень образования: — среднее (полное) общее образование
Целевая аудитория: — Учитель (преподаватель)
Класс(ы): — 10 класс
Предмет(ы): — Информатика и ИКТ
Цель урока: —
- Закрепление навыков решения задач с использованием одномерных массивов, поиска значений максимального и минимального элементов массива.
- Формирование умений сортировать элементы одномерного массива.
Тип урока: — Комбинированный урок
Используемое оборудование: —
Компьютер, мультимедийный проектор
Используемые ЦОР: —
Объектно-ориентированный язык программированияVisual Basic 5 CCE, Учебное пособие «1С: Вычислительная математика и программирование 10-11 класс»
Краткое описание: — Формирование умений сортировать элементы одномерного массива
Тема урока «Массивы. Сортировка числового массива».
Цели урока:
- Закрепление навыков решения задач с использованием одномерных массивов, поиска значений максимального и минимального элементов массива.
- Формирование умений сортировать элементы одномерного массива.
Задачи урока:
Образовательная: повторение и закрепление материала по теме «Массивы», формирование знаний по сортировке элементов одномерного массива
Развивающие: развитие приёмов умственной деятельности (обобщение, анализ, синтез, сравнение); развитие внимания, восприятия, развитие познавательного интереса к программированию.
Воспитательные:повышение информационной культуры учащихся, воспитание самостоятельности.
Тип урока: комбинированный.
Оборудование: компьютер, проектор.
Методическое обеспечение урока: презентация по теме урока, подготовленная в PowerPoint
Программное обеспечение урока:Объектно-ориентированный язык программированияVisual Basic 5 CCE, Учебное пособие «1С: Вычислительная математика и программирование 10-11 класс»
План урока:
ХОД УРОКА.
Учитель.
Сегодня мы продолжаем изучение темы «Массивы» и на уроке познакомимся с сортировкой числовых массивов.
Урок построим следующим образом:
Для активизации познавательной деятельности учащихся и закрепления ранее изученного материала работаем с вопросами и заданиями, представленными на слайдах презентации.
Ответ: Массив является набором переменных одного типа, объединённых одним именем.
Ответ: Массивы бывают одномерные, которые можно представить в форме одномерной таблицы, и двумерные, которые можно представить в форме двумерной таблицы.
Ответ: Способ заполнения с клавиатуры состоит в том, что значения элементов массива вводятся пользователем с клавиатуры, например с помощью функции InputBox.Способ заполнения массива с помощью оператора присваивания состоит в использовании оператора присваивания.
Задание 1. Для решения каких из нижеперечисленных задач нужны массивы, а в каких задачах можно обойтись и без них?
Ответ: В задаче 1 можно обойтись без массивов, используя цикл со счётчиком, в задачах 2и 3 нужно использовать массив.
Задание 2. Назовите любые элементы описанных массивов
Dim A(1 то5) As Integer
B (1 то3) As Byte
C (1 то4) As Single
Задание3. Опишите следующие массивы:
1)
3,14
0,2
-9,1
23
-2,5
2)
2
-5
150
1200
-45
11
—
Ответ:
Задание4.
Объясните, каким способом происходит заполнение массива элементами:
Dim A(1 то5) As Integer, I As Byte
Sub Command1_Click
For I =1 to 5
A(I) = InputBox(“Введите”, I, “элемент массива”)
Form1.Print A(I)
Next I
End Sub
Ответ: Ввод элементов массива (заполнение) происходит с клавиатуры.
Задание5
Dim A(1 то100), I As Byte
Sub Command1_Click
For I =1 to 100
A (I)= Int(Rnd*100)
Form1.Print A(I)
Next I
End Sub
Ответ: Ввод элементов массива (заполнение) происходит с помощью случайных чисел в промежутке от 0 до 100.
Задание 6 (Работа с карточками)
Учитель: У вас на столах лежат карточки с фрагментами двух событийных процедур:
1) нахождение minэлемента массива, состоящего из 30 целочисленных элементов,
2) нахождение индекса maxэлемента массива, состоящего из 20 десятичных элементов.
Iвариант. Дописать событийную процедуру нахождения minэлемента массива, состоящего из 30 целочисленных элементов,
IIвариант Дописать событийную процедуру нахождение индекса maxэлемента массива, состоящего из 20 десятичных элементов.
После окончания работы учащиеся меняются карточками и проверяют правильность выполнения по фрагментам, представленным на слайдах. Руки поднимают те учащиеся, кто безошибочно справился с заданием.
Задание 7.
Создадим событийную процедуру для решения следующей задачи: После сбора грибов учитель решил пожалеть тех учащихся, у которых грибов оказалось меньше всего: в корзинки этих учащихся он добавил количество грибов, равное среднему арифметическому от всех собранных учащимися грибов. Определите, какое количество грибов оказалось у каждого после подарка учителя.
Коллективно обсуждаем этапы создания проекта решения задачи:
В тетрадях учащиеся, комментируя каждый этап решения, создают проект программы на языке VisualBasik. Затем все сверяют правильность написания с программой на слайде.
Далее учащиеся реализуют составленную программу на компьютере в среде программирования VB.
Dim G (1 тоN), I, SR, min As Byte
SubCommand1_Click
N= InputBox(“Введите количество грибников”)
G(1)= InputBox(“Введите количество грибов у первого грибника”)
Min = G(1)
SR = G(1)
For I =2 to N
G(I)= InputBox(“Сколько грибов собрал”,I,”-й грибник?”)
If Min > G(I) THEN Min = G(I)
SR = SR+ G(I)
Next I
SR = INT(SR/N)
For I =1 to N
If G(I) =Min THEN G(I)= G(I)+ SR
Form1.Print G(I);
Next I
End Sub
Учитель. Ребята, внимание, нам необходимо решить следующую задачу:
Целочисленный числовой массив, состоящий из 10 элементов и заполненный случайными числами необходимо упорядочить по возрастанию значений его элементов.
Допустим, нам необходимо упорядочить следующий массив:
70
53
57
28
30
77
1
76
81
70
Как будет выглядеть массив после упорядочения?
Ответ:
1
28
30
53
57
70
70
76
77
81
Как вы думаете, как можно это сделать?
Для того, чтобы вам проще было понять алгоритм сортировки данного массива, давайте посмотрим лекцию «Сортировка числового массива». Внимание на экран. (Демонстрируется Урок 7 «Сортировка числового массива» Курс «Вычислительная математика» учебного пособия «1С: Вычислительная математика и программирование, 10-11 класс»)
После просмотра идёт обсуждение упорядочения массива для решения вышепредложенной задачи, затем подробно объясняю алгоритм упорядочения. Для наглядности использую следующую таблицу.
I
1
2
3
4
5
6
7
8
9
10
Значение счётчика чисел
А(I)
70
53
57
28
30
77
1
76
81
70
До сортировки
70 1
1
53 28
2
57 30
3
53
4
57
5
77 70
6
77 70
7
76
8
81 77
9
А(I)
1
28
30
53
57
70
70
76
77
81
После сортировки
Идея алгоритма состоит в следующем. Проводим поиск минимального элемента в массиве среди элементов с 1-го по 10-й. Далее меняем найденный минимальный элемент местами с элементом с индексом 1 (выполняем перестановку).
Проводим поиск минимального элемента среди элементов со 2-го по 10-й и делаем перестановку.
Проводим процедуру поиска минимального элемента среди оставшихся неупорядоченных элементов многократно.
Повторение реализуем с помощью цикла со счётчиком, максимальное значение которого составляет N-1, где N – количество элементов массива.
Вопрос: Какое количество раз будет повторяться цикл для упорядочения данного массива?
Ответ: В рассматриваемом случае цикл будет повторяться 9 раз.
Вопрос: А если массив содержит 15 элементов, какое количество раз будет повторяться цикл для упорядочения массива?
Ответ: цикл будет повторяться 14 раз.
А теперь создадим проект «Сортировка числового массива».
Вопрос: Что должен содержать программный модуль формы для решения данной задачи?
Ответ: программный модуль формы должен содержать: событийную процедуру сортировки и общую процедуру поиска минимального элемента.
1
Создать новый проект. Разместить на форме кнопку Command1. Ввести для кнопки событийную процедуру
2
Определить переменные для всего программного модуля. Преобразовать событийную процедуру из проекта «Поиск в числовом массиве» в общую процедуру Минэлемент(I, NAsByte)
3
Для осуществления перестановки использовать промежуточную переменную R. Для визуализации процесса сортировки для каждого цикла перестановки элементов (цикл по переменной I) в цикле по переменной К выводить на форму значения элементов массива.
DimI, A(1 To 10), MIN, J,K,R, NAs Byte
PrivateSubcommand1_Click()
ForI = 1 To 10
A(I)= Int(Rnd * 100)
Form1.Print A(I);
NextI
Form1.Print
Form1.Print
‘событийная процедура сортировки
For= 1 To10
'вызов общей процедуры поиска минимального элемента
CallМинЭлемент(I,N)
'перестановка
R = A(I)
A(I) = A(N)
A(N) = R
'печать массива для каждого цикла сортировки
ForK = 1 To 10
Form1.Print A(K);
NextK
Form1.Print
NextI
End Sub
4
‘Общая процедура поиска минимального элемента
SubМинэлемент(I, N As Byte)
Min = A(I)
N = I
ForJ = I+1 To 10
IfA(J) < Min Then Min = A(J): N = J
Next J
End Sub
5
Запустить проект.
Учитель. Реализуйте данный проект на компьютере.
Учитель. На этом уроке вы познакомились с сортировкой числового массива. Давайте ещё раз посмотрим на таблицу сортировки массива по возрастанию и ответим на следующие вопросы.
Вопрос: Какова идея алгоритма сортировки?
Вопрос: Сколько раз повторяется процедура поиска минимального элемента в рассмотренном случае?
Сколько процедур содержит проект «Сортировка числового массива»? Назовите и охарактеризуйте их.
Вопрос: Назовите промежуточную переменную, которую мы использовали для перестановки элементов.
Учитель. Большое всем спасибо за работу. Очень рада, что вы активно участвовали в уроке. Теперь главное – хорошо подготовиться дома к следующему уроку.
V. Домашнее задание.
1. Выучить п. 4.13.4 Сортировка массива. Стр. 218-220
2. Задание 4.30 стр. 220. Разработать проект, в котором реализуется сортировка числового массива по убыванию с использованием общей процедуры поиска максимального элемента. Данный проект вы будете реализовывать на компьютере на следующем уроке.
Файлы: массивы.ppt
Размер файла: 221696 байт.