План-конспект урока в 9 классе по теме "Одномерные массивы. Обработка массива"
план-конспект урока по информатике и икт (9 класс) на тему
Урок изучения нового материала построен в технологии проблемного обучения.
Скачать:
Вложение | Размер |
---|---|
odnomernye_massivy._obrabotka_massiva.docx | 38.73 КБ |
Предварительный просмотр:
Методическая разработка «открытого» урока информатики и ИКТ
Дата проведения: 01.04.2015
Место проведения: МБОУ СОШ № 25 г.о. Самара (урок дан в ходе проведения процедуры аккредитации школы)
Класс: 9а
Учитель: Карпова Марина Вячеславовна
Тема урока: Одномерные массивы. Обработка массива
Цели урока:
- Обучающая - сформировать представление о массиве как о средстве хранения информации; определить эффективность использования массивов при обработке большого количества данных; научится описывать одномерный массив, строить алгоритм работы с массивами.
- Развивающая – развивать познавательный интерес, творческую активность учащихся; развить у школьников умения излагать мысли, моделировать ситуацию, планировать свою деятельность.
- Мотивационная – побудить интерес к изучению информатики.
- Воспитательная – воспитывать умение сотрудничать, толерантность, инициативность, умение добиваться поставленной цели.
Тип урока: урок изучения нового материала.
Оборудование: компьютер, проектор, маркерная доска, интерактивная доска, мультимедиапрезентация «Одномерные массивы. Обработка массива», созданная в MS PowerPoint.
Ключевые слова или опорные понятия: программирование, массив, таблица, индекс, структурированный тип.
Педагогические технологии: технология проблемного обучения, ИКТ.
Продолжительность занятия – 40 минут.
Примечание: В ходе создания методической разработки урока, презентации использовались операционная система Windows XP и следующие программные средства:
- Microsoft Offict Word 20 – набор и редактирование текста;
- Microsoft Office PowerPoint 2007 – создание, обработка, компоновка презентации;
- Microsoft Office Picture Manager – обработка графики для презентации.
На момент проведения урока учащиеся могут составлять программы для поиска минимального и максимального числа из последовательности чисел вводимых с клавиатуры, хорошо решают задачи требующие использования циклов и вложенных циклов, умеют находить сумму, количество, произведение чисел вводимых с клавиатуры, умеют решать задачи с целочисленной арифметикой.
План урока
№ п/п | Этапы урока | Техническая поддержка | Временная реализация | |
1. | Организационный момент | 0,5 минуты | ||
2. | Создание проблемной ситуации | Слайд 1 | 4 минуты | |
3. | Постановка учебной задачи. Сообщение темы, формулирование целей урока. | Слайд 2, 3 | 3 минуты | |
4. | Поиск решения | |||
4.1 Определение массива. Характеристики массива. | Слайд 4, 5,6 | 2 минуты | ||
4.2 Способы описания массива | Слайд 7-10 | 4 минуты | ||
4.3 Способы заполнения массива | Слайд 11-12 | 4 минуты | ||
5. | Выражение решения | Слайд 13 - 17 | 16 минут | |
6. | Подведение итога урока | Слайд 18 | 4 минуты | |
7. | Домашнее задание | Слайд 19 | 0,5 минуты | |
Всего: | 38 минут (резерв: 2 мин.) |
Ход урока
- Организационный момент
- Создание проблемной ситуации. (Слайд 1)
Учитель. Начнем сегодняшний урок с решения задачи.
Задача. С клавиатуры вводится n чисел (числа могут повторяться). Необходимо подсчитать количество чисел равных наименьшему числу.
Давайте составим алгоритм решения задачи.
Ученик.
- Ввести n (количество вводимых чисел).
- Найти наименьшее число.
- Ввести число и запомнить его в переменную min.
- В цикле пока не просмотрим n чисел делать:
- Ввести число и запомнить его в переменную x/
- Сравнивать x с min. Если x
- Сравнить введенные ранее числа со значением min.
А как? Ведь мы не запоминали вводимые числа.
- Постановка учебной задачи. Сообщение темы, формулирование целей урока
Учитель. Какой выход из сложившейся ситуации? Или записывать все вводимые числа на листочек (при небольших значениях n), или нужно где-то сохранять вводимые числа.
И так, ребята мы подошли к тому, что для решения задачи вам нужно пополнить багаж знаний. Запишите тему нашего урока: «Одномерные массивы. Описание и действия над элементами массива». (Слайд 2)
Тема урока известна, давайте сформулируем цели и запишем их на доске. (Слайд 3)
Ученики. (Предполагаемый ответ)
- Узнать, что такое массив?
- Что можно хранить в массиве?
- Для чего он используется?
- Как записать в массив число?
- Как считать число из массива?
- Какие действия можно выполнять над информацией, помещенной в массив?
Учитель на данном этапе помогает ребятам формулировать цели и при необходимости дополняет ответы учеников.
- Поиск и выражение решения
Определение массива. Характеристики массива. (Слайд 4)
Если работа программы связана с хранением и обработкой большого количества однотипных переменных, для их представления в программе можно использовать массивы.
Массив представляет собой совокупность данных одного типа с общим для всех элементов именем.
Массив относится к структурированным типам данных (упорядоченная совокупность данных).
Элементы массива пронумерованы, и обратиться к каждому из них можно по номеру Номера элементов массива иначе называются индексами, а сами элементы массива — переменными с индексами (индексированными переменными).
При обращении к элементу массива нужно указать имя массива и индекс того элемента, с которым вы хотите выполнить действие. Индекс элемента массива указывается в квадратных скобках после имени массива. Например, массив а заполнен следующим образом:
-5 | 8 | 2 | 4 | -9 | -1 | 6 | 4 | 2 | 1 |
Значение элемента массива а[3]=2, а а[7]=4. (Слайд 5)
а[3]=2
Обратите внимание — данные в массивах сохраняются только до конца работы программы. Для их долговременного хранения программа должна записать данные в файл. Характеристики массива: (Слайд 6)
- тип — общий тип всех элементов массива;
- размерность (ранг) — количество индексов массива;
- диапазон изменения индекса (индексов) — определяет количество элементов в массиве.
Одномерный массив — это пример массива, в котором элементы нумеруются одним индексом.
Способы описания массива
(Слайд 7)
- Самый простой способ описания массива — это объявить переменную в разделе описания переменных var с использованием зарезервированного слова array (т. е. массив). В общем виде описание выглядит так:
var ИмяМассива: array[НижняяГраница.. ВерхняяГраница] of Тип Элементов;
Например:
Const n=100;
var a: array[1..n] of real; { 100 элементов — вещественные числа }
b: array[0..50] of char; { 51 элемент — символы }
с: array[-3..4] of boolean; { 8 элементов — логические значения }
x,y: array[1..20] of integer; { два массива x и у содержат по 20 элементов — целые числа }
Описание массива требуется компилятору для выделения памяти под его элементы.
(Слайд 8)
- Массив также можно описать как типизированную константу в разделе описания констант. Список значений элементов массива при этом заключается в круглые скобки.
Например:
const x: array[1..5] of integer=(l,3,5,7,9);
В этом примере не просто выделяется память под массив, а происходит заполнение ячеек заданными значениями по строкам.
(Слайд 9)
- При описании массивов также широко используется предварительное описание типа в разделе описания типов данных. Такая возможность может потребоваться, например, при использовании имени массива в качестве параметра процедуры или функции.
Например, для массива а из 100 элементов (вещественные числа, тип real) в памяти будет выделено 100 ячеек по шесть байт — всего 600 байт.
Type ИмяТипа = аггау[ НижняяГраница.. ВерхняяГраница ] of Тип Элементов;
Var ИмяМассива : ИмяТипа;
Например:
Type z: array[1..20] of integer;
Var x, y: z
(Слайд 10)
Как вы думаете, при выполнении программы обязательно заполнять все ячейки данными? Почему?
Если ячейка не заполнена то, какое значение в ней находится?
Может ли реальное количество элементов в массиве может быть меньше, чем указано при описании? Почему?
А может быть больше? Почему?
Вывод. При выполнении программы вовсе не обязательно заполнять все ячейки данными (в этом случае значение ячейки будет равно нулю), т. е. реальное количество элементов в массиве может быть меньше, чем указано при описании, но ни в коем случае не должно быть больше.
Способы заполнения массива
(Слайды 11,12)
Значения элементов массива также можно задать следующими способами:
- при вводе данных с клавиатуры: for i:=1 to n do read (a[i]);
- с помощью датчика случайных чисел.
Заполним массив числами в диапазоне от -3 до 7.
randomize;
for i:=1 to n do a[i]:=random(11)-3;
- присваиванием заданных значений;
Заполним массив четными числами
for i:=1 to n do a[i]:=i*2;
или
for i:=1 to n do begin
readln (x);
if x mod 2=0 then a[i]:=x
- считывая значения элементов из файла: for i:=1 to n do read (f,a[i]);
Вывод элементов массива осуществляется в цикле: for i:=1 to n do write (a[i],’ ‘)
- Выражение решения
Действия с одномерными массивами.
(Слайд 13)
Для работы с массивом как единым целым используется имя массива без указания индекса в квадратных скобках. Массивы могут участвовать только в операциях отношения «равно», «не равно», и в операторе присваивания. В этом случае массивы должны иметь одинаковый тип элементов и одинаковое количество элементов.
Например.
Var A,B:array[1..n] of integer;
Применение допустимых операций даст следующий результат:
A=B-результат истина, если значение каждого элемента массива а равно соответствующему значению элемента b.
A<>B- результат истина, если хотя бы одно значение элемента массива а не равно значению соответствующего элемента массива b.
A:=B- все значения элементов массива B присваиваются соответствующим элементам массива A.
Действия над элементами массива.
(Слайд 14)
Пусть в одномерном массиве а содержится n элементов- целые числа.
- Нахождение суммы, произведения, среднеарифметического элементов массива удовлетворяющих заданным условиям.
Например. Вычислим сумму элементов.
Program z1;
Uses crt;
Const n=10;
Var a:array[1..n] of integer; {описываем массив а}
i, s: integer;
begin
randomize; s:=0;
for i:=1 to n do begin
a[i]:=random(11)-3; {заполняем массив а случайными числами }
write (a[i],’ ‘); {вывожу заполненный массив}
end;
for i:=1 to n do s:=s+a[i]; {находим сумму элементов массива а }
writeln (‘сумма элементов массива =’, s) {выводим ответ }
end.
(Слайд 15)
- Подсчет количества элементов, удовлетворяющих какому-либо условию.
Например, найдем произведение элементов имеющих нечетный индекс.
Program z2;
Uses crt;
Const n=10;
Var a:array[1..n] of integer; {описываем массив а}
i, p: integer;
begin
randomize; p:=1;
for i:=1 to n do begin
a[i]:=random(11)-3; {заполняем массив а случайными числами }
write (a[i],’ ‘); {вывожу заполненный массив}
end;
for i:=1 to n do
if i mod 2<>0 then p:=p*a[i] {находим произведение элементов массива а имеющих нечетный индекс}
writeln (‘призведение элементов массива =’, s) {выводим ответ }
end.
(Слайд 16)
- Поиск элемента с заданным значением. Найти элемент — это значит выяснить его номер в массиве.
Например, найдем номер первого из элементов массива а, имеющего значение равное нулю. Если таких элементов нет, выведем соответствующее сообщение.
Program z2;
Uses crt;
Const n=10;
Var a:array[1..n] of integer; {описываем массив а}
i, p: integer;
begin
randomize; p:=1;
for i:=1 to n do begin
a[i]:=random(11)-3; {заполняем массив а случайными числами }
write (a[i],’ ‘); {вывожу заполненный массив}
end;
i:=1;
repeat
i:=i+1
until (a[i]=0) or (i=n) ; {выход из цикла, когда нашли нужный элемент или массив закончился}
if a[i]=0 then writeln (‘номер первого нулевого элемента=’, i)
else writeln (‘ таких элементов нет!’);
end.
(Слайд 17)
- Поиск максимального (минимального) элемента и его номера.
Например, в одномерном массиве подсчитает количество элементов равных минимальному.
Ребята, кто попробует решить эту задачу на доске?
Вызываю к доске ученика пожелавшего решить задачу.А с остальными ребятами проговариваем алгоритм решения.
- Описать массив.
- Заполнить массив.
- Найти минимальный элемент массива.
- Подсчитать количество элементов равных минимальному.
For i:= 1 to n do if a[i]=min then k:=k+1;
Рассматриваем решение на доске. Комментируем, исправляем ошибки, если таковы были.
(Слайд 18)
- Подведение итога урока
А теперь, ребята вернемся к целям урока (которые записаны на доске). Скажите на все вопросы мы нашли ответы?
Чем ценны массивы?
Ученик. (Предполагаемый ответ) Массивы ценны тем, что:
- Индексы элементов массива обеспечивают доступ не к одному, а к последовательности элементов. Обработка массивов производится при изменении индексов элементов.
- Сразу можно хранить и обрабатывать большое количество однотипных данных
Каким образом задается описание массива, что в нем указывается?
Каким образом задается обращение к элементу массива?
Почему при описании массива предпочтительнее употреблять константы , а не указывать размеры массива в явном виде?
(Слайд 19)
- Домашнее задание.
§41, 42 читать, отвечать на вопросы в конце параграфа.
Решить задачи №3, №4 на стр. 227
Использованные источники и литература:
1. Информатика и ИКТ: учебник для 9 класса. / И.Г.Семакин, Л.А.Залогова, С.В.Русаков, Л.В.Шестакова. - 3-е изд., испр. – М.: БИНОМ. Лаборатория знаний, 2009.
2. Рапаков Г.Г., Turbo Pasccal для студентов и школьников/ Г.Г. Рапаков, С.Ю. Ржеуцкая. Спб.: БХВ-Петербург, 2007
3. Окулов С.М., Основы программирования/ С. М. Окулов. – М.: БИНОМ. Лаборатория знаний, 2004.
Заместитель директора по УМР С.Ф. Кузнецова
По теме: методические разработки, презентации и конспекты
План-конспект 83 урока, 9 класс,УМК Биболетовой М.З.
4 четверть9 классUnit 4. Make your choice, make your lifeSection 1. it’s time to think about your future career.Урок № 83(1)Тема «Модальные глаголы»Цели: развитие навыков устной речи и навыков а...
План-конспект открытого урока. 2 Класс. Тема: "учимся играя."
План-конспект открытого урока. Тема: Учимся играя. Класс: 2 «А» УМК М.З.Биболетова «EnjoyEnglish-1» Lesson39...
План – конспект открытого урока 7 класс. Тема: «Освоение техники выполнения броска в кольцо с 2 шагов в прыжке».
План – конспект урока 7класс.Тема: «Освоение техники выполнения броска в кольцо с 2 шагов в прыжке.»Цель: «Усвоение учащимися броска в кольцо с 2 шагов в движении при игре в баскетбол» Зада...
План-конспект открытого урока по классу блок-флейта
План-конспект открытого урока поклассу духовых инструментов с учащаяся 1 класса . Тема урока "Подготовительные упражнения к различным видам техники". Цель урока " Обучение на начальном этапе игр...
План-конспект открытого урока в классе специального фортепиано
Открытый урок на тему: «Различные виды работ на уроке специального фортепиано»...
План - конспект открытого урока 8 класс история «Отечественная война 1812 года»
Цели урока:на основе материала исторических источников, литературы усвоить ход Отечественной войны, героическую оборону российского населения, выяснить, в чем заключался ее народный характер;воспитани...
План конспект открытого урока 7б класс по(ФГОС)
Технологическая карта урока 7б класс по ФГОС....