«Осенний фестиваль знаний 2024»

Урок по теме: «Сортировка, обращение массива», 9 класс

Урок по теме: «Сортировка, обращение массива», 9 класс, урок изучения и первичного закрепления новых знаний

Олимпиады: Информатика 1 - 11 классы

Содержимое разработки

Тема «Сортировка, обращение массива».

Цели: воспитывать личность:

Знаущую: сортировка и обращение в линейном массиве.

Умеющую: сортировать элементы массива, обращать линейный массив, а также выполнять сортировку и обращение до или посде указанного элемента массива.

Тип урока: комбенированный (Урок изучения и первичного закрепления новых знаний)

Класс: 9

Ход урока:

  1. Организационный момент. (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

План решения:

  1. Описать массив и все переменные.

  2. Ввести массив (блок ввода).

  3. Решить задачу а) найти максимальный элемент б) заменить все положительные на макс.

  4. Вывести массив на экран (блок вывода).

Решение:

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. Описать массив.

  2. Ввести массив.

  3. Обработать массив (решить задачу или вписать блок решения).

  4. Вывести массив или искомую переменную.

А) Сортировка – это смещение всех или определенного промежутка элементов массива по возрастанию или по убыванию. Самый распространенный способ сортировки – пузырьковая.

Первый проход. Найти минимальный элемент и поставить на первое место (поменять местами с А(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

Словесный разбор задачи:

  1. Для обращения массива нужно поменять первый и последний элемент местами

Для этого запоминаем первый элемент С:= A[1]; тем временем в первый элемент заносим последний элемент A[1]:= A[N], а затем A[N]:=.C;

Далее нужно выполнить тоже самое со вторым и предпоследним и т.д.

Если быть внимательным то можно увидеть что количество перестановок будет равно половине элементов массива.

  1. Поэтому цикл, в котором будет осуществляться перестановка будет = 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, только четные), повторить блоки

Задачи для домашнего задания:

  1. Вводится линейный массив отсортировать массив до максимального значения.

  2. Вводится линейный массив отсортировать массив после максимального значения.

  3. Вводится линейный массив отсортировать массив между максимальным и минимальными значениями.

  4. Вводится линейный массив отсортировать массив между введенными позициями.


5.Первичное закрепление знаний.

1)Вопросы для повторения:

  1. Что такое сортировка?

  2. Какова особенность алгоритма обращения массива?

  3. Как измениться программа №1, если нужно отсортировать массив до введенного числа?

  4. Как измениться программа №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

Результат:

  1. -5 3 10 0 1 -10 8 -6 8 -6 -4

6. Подведение итогов. Выставление оценок.Рефлексия.

Самооценка и взаимооценка. 

Что нового вы сегодня узнали на уроке?

Как ты оцениваешь свою работу на уроке, работу одноклассников?

Какие возникали затруднения в процессе урока?

Анализ цели урока, ключевого вопроса. Учащиеся заполняют оценочные листы. Обратная связь с помощью сигнала «Светофор».



Получите свидетельство о публикации сразу после загрузки работы



Получите бесплатно свидетельство о публикации сразу после добавления разработки


Олимпиады «Осенний фестиваль знаний 2024»

Комплекты учителю



Качественные видеоуроки, тесты и практикумы для вашей удобной работы

Подробнее

Вебинары для учителей



Бесплатное участие и возможность получить свидетельство об участии в вебинаре.


Подробнее