57-58 урок, 10 класс – практика
Учитель: Брух Т.В.
Дата: ___________
Тема урока: «Обработка массивов, записанных в файле. Обработка смешанных данных, записанных в файле».
Цель: закрепить знания и навыки решения задач по теме «Одномерные массивы», формирование знаний учащихся о типовых задачах обработки массивов.
- обучающие: знакомство с типовыми операциями обработки массивов в Паскале; изучение и первичное закрепление теоретического материала по обработке массивов в Паскале;
- развивающие: развитие информационной культуры, развитие аналитических способностей обучающихся: умение анализировать, сопоставлять, сравнивать, обобщать, делать выводы, развитие умения рационально организовать свою деятельность, развитие творческих способностей обучающихся;
- воспитательные: развитие интереса к изучаемой дисциплине, воспитание самостоятельности в выполнении работы
Ход урока:
Этапы урока |
Деятельность учителя
|
Деятельность ученика |
|||
Организационный момент |
Приветствует обучающихся, проверяет их готовность к уроку, отмечает отсутствующих.
|
|
|||
Актуализация знаний |
Прежде чем перейти к изучению следующей темы, повторим материал предыдущих уроков по теме массивы. Как описывается одномерный массив в Паскале? Как ввести одномерный массив в память ПК? Как вывести одномерный массив на экран?
Далее выполним задания на повторение. Открываем интерактивное приложение, задания 1-3.
|
Отвечают на вопросы. Примерные ответы учащихся: 1. Массивом в Паскале называют переменную величину регулярного типа. Регулярный тип-это структурный типа данных, представляющий собой совокупность пронумерованных однотипных величин. 2. Массив описывается в разделе описания переменных в следующем формате Интерактивное задание: Var <идентификатор>: array [<тип индекса>] of <тип компонентов> 3. Ввод массива производится покомпонентно. Пример ввода. For i:=1 to 12 do ReadLn (T[i]);
4. Аналогично в цикле по индексной переменной организуется вывод значений массива на экран. Пример вывода: For i:=1 To 12 Do Write (T[i]:8:4);
Выполняют интерактивные задания на пк, вносят результаты в оценочный лист.
|
|||
Целеполагание и мотивация |
значение переменной с
|
Считают, чему будет равна переменная c.
|
|||
Усвоение новых знаний и способов усвоения
|
1. Заполнение массива. Мы уже знаем, что значения массива могут задаваться вводом с клавиатуры, чтением из файла или вычислением в программе. В некоторых задачах статистического характера требуется заполнять массивы случайными числами. Пример: заполнить массив равномерно распределенными целыми случайными числами в диапазоне от 0 до 100. Var x:= array [1..20] of integer; i:integer; Begin Randomize; For i:=1 to 20 do x[i]:=Random(100); For i:=1 to 20 do write (x[i]:4); End. 2. Нахождение суммы элементов массива, состоящего из n чисел s:=0; for i:=1 to n do s:=s+a[i]; writeln (‘сумма =’, s); 3. Выбор максимального элемента. 4. В одномерном массиве X из примера требуется определить наибольшее значение среди значений элементов и его порядковый номер (индекс). 5. Идея алгоритма решения этой задачи следующая: чтобы в переменной Xmax получить максимальное значение массива X, сначала в нее заносится первое значение массива X[1]. Затем значение Xmax поочередно сравнивается с остальными элементами массива, и каждое значение, большее Xmax, присваивается этой переменной. Для получения номера максимального элемента массива в целочисленной переменной imax следует записывать в нее номер элемента массива X одновременно с занесением значения в Xmax. На алгоритмическом языке это запишется так: Xmax:=X[1]; imax:=1 для I:=2 до 20 нц если X[I]> Xmax то Xmax:=X[I]; imax:=I все кц Заметим, что если в массиве X несколько значений, равных максимальному, то в imax будет получен первый номер из этих элементов. Чтобы получить номер последнего элемента, равного максимальному, нужно в ветвлении если заменить знак отношения > на >=. Для нахождения минимального элемента массива достаточно заменить знак отношения > на <. 6. Сортировка массива Зачем нужна сортировка? Сортировка «пузырьком» традиционно считается наиболее простой и понятной для реализации на языках программирования. Алгоритм сортировки «пузырьком» по возрастаниюСуть упорядочивания по возрастанию заключается в следующем: a. просматриваем слева направо все пары элементов: 1-й со 2-м, затем с 3-м, 4-м и т.д. Если при этом рассматриваемый элемент массива больше следующего, то элементы меняем местами. b. затем осуществляется переход ко второму элементу массива и он сравнивается с 3-м, 4-м, и т.д. И в случае, когда 2-й элемент больше следующего, то они меняются местами. c. В результате такого просмотра массива максимальный элемент окажется на крайнем справа (своём) месте, а минимальный на крайнем слева месте. d. Общее число просмотров массива из N элементов при этом равно N-1. Используя алгоритм сортировки по возрастанию, учитель подводит учащихся к самостоятельному выводу алгоритма сортировки по убыванию через замену знака неравенства в условном операторе на противоположный – со знака «больше» на знак «меньше. |
Ученики разбирают операторы с учителем и записывают программу в тетрадь.
Примерные ответы. С отсортированными данными работать легче, чем с произвольно расположенными: · когда элементы отсортированы, их проще найти; · на отсортированных данных легче определить, имеются ли пропущенные элементы; · проще удостовериться, что все элементы были проверены; · легче найти общие элементы двух массивов. Сортировка является мощным средством ускорения работы практически любого алгоритма, в котором нужно часто обращаться к определенным элементам данных. |
|||
Организация первичного закрепления
|
Интерактивное приложение, задания 4,5.
После заполнения пропусков, внесите баллы в оценочный лист и перепишите программу в тетрадь, она нам пригодится на следующей практической работе.
|
Решают задания, вносят баллы в оценочный лист
Заполняют пропуски, вносят баллы в оценочный лист, переписывают программу в тетрадь. Program sort; var a:array [1..10000] of byte; n,i : integer; p:byte; u:boolean; begin write ('N= '); readln (n); for i:=1 to n do a[i]:=random (101); write ('Исходный массив'); for i:=1 to n do write (' ', a[i]); writeln (); u:=false; while not (u) do begin u:=true; for i:=1 to n-1 do begin if a[i]>a[i+1] then begin u:=false; p:=a[i]; a[i]:=a[i+1]; a[i+1]:=p; end; end; end; write ('Отсортированный массив:'); for i:=1 to n do write (' ', a[i]); end. |
|||
Практическая работа |
Обработка массивов, записанных в файле - задачи |
|
|||
Домашнее задание |
Озвучивает домашнее задание. 1) Теория 2)Написать программу нахождения наименьшего элемента в заданном массиве из n чисел |
Записывают домашнее задание. |
Скачано с www.znanio.ru
© ООО «Знанио»
С вами с 2009 года.