Тема «Сортировка, обращение массива».
Цели: воспитывать личность:
Знаущую: сортировка и обращение в линейном массиве.
Умеющую: сортировать элементы массива, обращать линейный массив, а также выполнять сортировку и обращение до или посде указанного элемента массива.
Тип урока: комбенированный (Урок изучения и первичного закрепления новых знаний)
Класс: 9
Ход урока:
Организационный момент. (1 минута)
Проверка готовности учащихся к уроку, на уроке присутствует 9 учеников из 10 человек
2. Проверка домашнего задания. (10 минут)
На прошлом уроке вы познакомились с понятием поиск в линейном массиве.
Вопросы:
Написать блок описания линейного массива?
Написать блок ввода линейного массива?
Написать блок вывода линейного массива?
Как обратиться к заданному элементу массива?
Перечислить названия всех блоков по теме «Поиск в линейном массиве»
Написать блок замены.
Блок замены ( все элементы равные 7 заменить 0 ):
for i := 1 to n do
if a[i] = 7 then a[i] := 0;
Задача №8. В данном линейном массиве все положительные элементы заменить на максимальный элемент.
Ввод:
10 -5 20 -1 30 -7 40 -8
Вывод:
40 -5 420 -1 40 -7 40 -8
План решения:
Описать массив и все переменные.
Ввести массив (блок ввода).
Решить задачу а) найти максимальный элемент б) заменить все положительные на макс.
Вывести массив на экран (блок вывода).
Решение:
program pr1;
var a: array[1..100] of integer;
n, i , max : integer;
begin
readln (n);
for i : =1 to n do
read (a[ i ]);
max: = a[ 1 ];
for i : =1 to 10 do
if a[ i ] max then max: = a[ i ];
for i : =1 to n do
if a[ i ] 0 then a[ i ]:= max;
for i : =1 to n do
write (a[ i ], ‘ ‘);end.
3. Изучение нового материала. Сначала вспомним план работы с линейным массивом.
План работы с линейным массивом:
Описать массив.
Ввести массив.
Обработать массив (решить задачу или вписать блок решения).
Вывести массив или искомую переменную.
А) Сортировка – это смещение всех или определенного промежутка элементов массива по возрастанию или по убыванию. Самый распространенный способ сортировки – пузырьковая.
Первый проход. Найти минимальный элемент и поставить на первое место (поменять местами с А(1)). Для поиска минимального элемента требуется (n-1) сравнений. Элементов в массиве 5, следовательно количество итераций сравнения – 4.
Второй проход. Из оставшихся найти минимальный элемент и поставить на второе место (поменять местами с А(2)), и т. д. Количество итераций сравнения – 3.
Третий проход. Количество итераций сравнения – 2.
Четвертый проход. Количество итераций сравнения – 1.
Для данного массива линейная сортировка осуществляется за 10 итераций.
Б) Обращение массива.
Задача № 2: Заполнить линейный массив и обратить его.
Пример, исходный массив:
4 -5 3 10 -4 -6 8 -10 1 0
Результат:
0 1 -10 8 -6 -4 10 3 -5 4
Словесный разбор задачи:
Для обращения массива нужно поменять первый и последний элемент местами
Для этого запоминаем первый элемент С:= A[1]; тем временем в первый элемент заносим последний элемент A[1]:= A[N], а затем A[N]:=.C;
Далее нужно выполнить тоже самое со вторым и предпоследним и т.д.
Если быть внимательным то можно увидеть что количество перестановок будет равно половине элементов массива.
Поэтому цикл, в котором будет осуществляться перестановка будет = N/2.
for i:=1 to N div 2 do begin c:= A[i]; A[i]:=A[n-i+1]; A[n-i+1]:= c; end;
Блок
обращения
линейного
массива:
var A: array[1..10] of integer; i, c: integer; begin { заполнить массив } for i:=1 to N div2 do begin c:= A[i]; A[i]:=A[n-i+1]; A[n-i+1]:= c; end; { вывести полученный массив } end.
Программа:
4. Домашнее задание:
Решить одну задачу из предложенных по вариантам (В-1, только нечетные; В-2, только четные), повторить блоки
Задачи для домашнего задания:
Вводится линейный массив отсортировать массив до максимального значения.
Вводится линейный массив отсортировать массив после максимального значения.
Вводится линейный массив отсортировать массив между максимальным и минимальными значениями.
Вводится линейный массив отсортировать массив между введенными позициями.
5.Первичное закрепление знаний.
1)Вопросы для повторения:
Что такое сортировка?
Какова особенность алгоритма обращения массива?
Как измениться программа №1, если нужно отсортировать массив до введенного числа?
Как измениться программа №2, если нужно обратить массив после введенного числа?
2) Самостоятельная работа.
Задачи для самостоятельного решения по теме сортировка и обращение линейного массива:
Вариант-1
1.Вводится линейный массив отсортировать его первую половину.
2.Заполнить линейный массив и обратить его перед введенным числом.
Пример:
Исходный массив:
4 -5 3 10 -4 -6 8 -10 1 0
Число:
-4
Результат:
10 3 -5 4 -4 -6 8 -10 1 0
Вариант-2
1.Вводится линейный массив отсортировать его вторую половину.
2. Заполнить линейный массив и обратить его после максимального элемента.
Пример:
Исходный массив:
4 -5 3 10 -4 -6 8 -10 1 0
Результат:
-5 3 10 0 1 -10 8 -6 8 -6 -4
6. Подведение итогов. Выставление оценок.Рефлексия.
Самооценка и взаимооценка.
Что нового вы сегодня узнали на уроке?
Как ты оцениваешь свою работу на уроке, работу одноклассников?
Какие возникали затруднения в процессе урока?
Анализ цели урока, ключевого вопроса. Учащиеся заполняют оценочные листы. Обратная связь с помощью сигнала «Светофор».