Новогодняя скидка — 70% на все курсы только до 31 декабря!
Добавить материал и получить бесплатное свидетельство о публикации
версия для слабовидящих
Главная / Информатика / Урок "Обмен между элементами массива"

Урок "Обмен между элементами массива"

hello_html_4a1ce1f.gifhello_html_m4dbd77e9.gifhello_html_2682ef22.gifТема урока: обмен между элементами массива (5 урок по теме массивы, 9 класс, база).

Цели урока:

  • Обучающие:

  • повторение ранее изученного материала;

  • познакомить учащихся с алгоритмом обмена на языке Паскаль;

  • сформировать у учащихся первичные знания по применению данного алгоритма.

  • Развивающие:

  • развитие познавательного интереса,алгоритмического мышления, интерес к программированию;

  • активизация мышления, тренировка произвольного внимания, всех видов памяти.

  • Воспитательные:

  • воспитывать интерес к предмету, аккуратность, внимательность, развивать информационную культуру учащихся, способность к самостоятельной и коллективной деятельности.

Тип урока: урок изучения и первичного закрепления новых знаний.

Технологии обучения: информационно-коммуникационная технология, технология развивающего обучения, здоровьесберегающая технология, личностно-ориентированное обучение.

Оборудование: мультимедийный проектор, компьютеры с установленной средой программирования Pascal ABC, , интерактивная доска SMART с программным обеспечением SMARTNotebook 11.

План урока:

1. Организационный момент. Активизация внимания.
2. Объяснение материала.
3. Закрепление полученных умений и навыков. 
4. Подведение итогов урока и домашнее задание.

Ход урока:

«Разминка» (задание на интерактивной доске SMART, 1 страница):

Назовите цвет букв слова, а не само слово.

hello_html_m4131a168.png

На одном из уроков, когда мы начали изучать массивы, были созданы интеллект-карты, обратимся к ним.Валгоритме работы с массивом, к какому виду работы может относится обмен между элементамимассива?(Обработка). Чтобы разобраться с темой сегодняшнего урока, попробуем решить следующую задачу.

Задача 1: Задан массив. Обменять 2 и 7 элементы массива.

Предположим, что у нас был создан такой массив. (Небольшое повторение ранее изученного материала, отвечаем по цепочке).Работа на интерактивной доске (2 страница)

P

1

2

3

4

5

6

7

8

9

10

А

-10

12

45

9

0

-5

18

36

-7

43

  • Каково его имя? (Имя массива А).

  • Каково имя переменной, которая определяет индекс элементов массива, имя счетчика? (Счетчик P)

  • Количество элементов в массиве? (10 элементов)

  • Каким способом можно заполнить такой массив? (READ, RANDOM)

  • В каком интервале сгенерированы числа? (от -10 до 45).

  • Назовите элементы массива А[5], A[8], A[4], если P=3, то A[P], A[P-2], A[P*3+1].



Составляем программу. Объявляем и заполняем массив самостоятельно.{Один ученик пишет программу за учительским компьютером, экран доски выключен.После проверки правильности записи начала программы, включаем интерактивную доску для корректировки задачи}.

VAR A:ARRAY[1..10] OF INTEGER;

P,V:INTEGER;

BEGIN

FOR P:=1 TO 10 DO BEGIN

A[P]:=RANDOM(56)-10;

WRITE(A[P],' ');

END;

Давайте подумаем, как обменять числа, данные, элементы массива? Пробуем поменять элементы массива на интерактивной доске (3 страница). Предложите свои способыобмена 2-х элементов массива.

После обсуждения делаем вывод -

алгоритм обмена между элементами массива:

  1. Записать один из элементов массива во вспомогательную ячейку (V:=A[2];)

  2. В эту же ячейку массива записать другой элемент массива, предназначенный для обмена (A[2]:=A[7];)

  3. Из вспомогательной ячейки перенести данные во вторую ячейку, которая участвует в обмене (А[7]:=V).

Комментарий к алгоритму(записать в тетрадь под диктовку).

  1. Обмен выполняется 3-мя операциями присваивания;

  2. Первая операция всегда выполняется во вспомогательную ячейку;

  3. Каждая переменная записывается до знака присваивания и после знака присваивания.

Продолжаем создавать программу. Обработку напишем вместе.

Нужна ли в обработке команда повторения для данной задачи? (Действие только между двумя конкретными ячейками, поэтому команда повторения не нужна).

V:=A[2];

A[2]:=A[7];

A[7]:=V;

WRITELN;

FOR P:=1 TO 10 DO

WRITE(A[P],' ');

END.

Укогоестьвопросы?

Что нужно изменить в программе, чтобы переставить местами первый и последний элементы массива? (V:=A[1]; A[1]:=A[10]; A[10]:=V;).Что нужно изменить в программе, чтобы переставить два соседних элемента, если их индекс задается счетчиком?(V:=A[Р];A[Р]:=A[Р+1];A[Р+1]:=V; или

V:=A[Р];A[Р]:=A[Р-1];A[Р-1]:=V;).

Задача 2. Дан тот же массив. Поменять местами элементы, стоящие на четных местах с элементами, стоящими на нечетных местах.

Объявление и заполнение массива оставляем от предыдущей задачи. Как выполнить обмен между элементами в общих чертах тоже понятно. Нужно определить, как обозначить элемент массива, стоящий на четном месте и как обозначить элемент, стоящий на нечетном месте.

Какие элементы нужно поменять? (2-й с 1-м , 4-й с 3-м и т.д.) То есть нужно поменять очередной элемент с предыдущим.Как обозначается положение конкретного элемента в массиве?(За расположение элемента в массиве отвечает счетчик, который мы обозначили переменной Р). Какая функция нам понадобится для этих целей?(Функция mod – нахождение остатка от деления одного числа на другое). Как её записать? (Нужно проверить индекс элемента на четность (IFPMOD 2=0THEN{ОБМЕН ЭЛЕМЕНТОВ}).Как выполнить обмен? Как обозначить текущий, очередной элемент массива? (A[P]). Как обозначить предыдущий элемент массива (A[P-1]).Записать обмен между элементами после команды THEN, учитывая, что нужно выполнить не одну команду, а три (после THENнужно поставить операторные скобки BEGIN и END).Вместо двух конкретных ячеек, как в первой задаче, для обмена могут использоваться несколько элементов массива. Как нужно организовать работу программы, чтобы выполнить обмен несколько раз. (Использовать команду повторения FORTODO).

Теперь пробуем написать программу для решения задачи, начиная с обработки. {За учительский компьютер вызывается один ученик, который пишет обработку массива.Доска находится в замороженном состоянии, показывается часть программы с объявлением массива и заполнением}.

Учитель проверяет процесс выполнения задания. Через 5-7 минут включается доска и происходит проверка выполненного задания. При необходимости выполняется отладка программы.

VAR A:ARRAY[1..10] OF INTEGER;

P,V:INTEGER;

BEGIN

FOR P:=1 TO 10 DO BEGIN

A[P]:=RANDOM(56)-10;

WRITE(A[P],' ');

END;

FOR P:=1 TO 10 DO

IF P MOD 2=0 THEN BEGIN

V:=A[P];

A[P]:=A[P-1];

A[P-1]:=V;

END;

WRITELN;

FOR P:=1 TO 10 DO WRITE(A[P],' ');

END.



Подведение итогов: итак, сегодня на уроке мы повторили, как работать с элементами массива,научились выполнять обмен между элементами массива. Во многих практических задачах этот алгоритм используется: сортировка массива, сдвиг элементов, циклический сдвиг элементов массива. Это настолько часто используемый алгоритм, что существует специальная функция для обмена между элементами массива. Но пока мы пользоваться данной функцией не будем. Можно выполнять обмен данными без вспомогательной переменной. Но это другой алгоритм. Если есть желание, то его описание можно найти и разобраться самостоятельно.

Домашнее задание: 1. Дан массив К, содержащий 39 элементов в интервале от 5 до 27. Каждый третий элемент массива, начиная с 1-го, обменять с предыдущим.

2. Дан массив N, содержащийA элементов в интервале от -15 до 19. В каждой паре элементов массива поставить на первое место меньшее из чисел.

Тексты программ в приложении 2



Другие задачи по обмену элементов массива:

А). Дан массив. В том же массиве создать массив «перевертыш». Нового массива не создавать.

Б). Дан массив. Поменять местами первую и вторую половины массива.

В). Дан массив. Поменять первый отрицательный и первый положительный элементы массива.

После изучения «Поиск минимального и максимального элемента» –

Г). Дан массив. Обменять минимальный и максимальный элементы массива.

Д) Дан массив. Обменять максимальный элемент массива и первый.

Приложение.

hello_html_m44a5925e.pngСтраница 1.

hello_html_666caad1.png

Страница 2-1.

hello_html_m32cff1db.png

Страница 2-2.

III

II

I

hello_html_4ccddbf6.png

Страница 3.



hello_html_778295b9.png

Страница 4.

Приложение 2

Ответ к задаче 1 домашнего задания

Ответ к задаче 2 домашнего задания

VAR K:ARRAY[1..39] OF INTEGER;

I,V:INTEGER;

BEGIN

FOR I:=1 TO 39 DO BEGIN

K[I]:=RANDOM(23)+5;

WRITE(K[I],' ');

END;

FOR I:=1 TO 39 DO

IF I MOD 3=0 THEN BEGIN

V:=K[I];

K[I]:=K[I-1];

K[I-1]:=V;

END;

WRITELN;

FOR I:=1 TO 39 DO WRITE(K[I],' ');

END.


VAR N:ARRAY[1..1000] OF INTEGER;

I,V,A:INTEGER;

BEGIN READLN(A);

FOR I:=1 TO A DO BEGIN

N[I]:=RANDOM(35)-19;

WRITE(N[I],' ');

END;

FOR I:=2 TO A DO

IF (N[I-1]>N[I]) AND (I MOD 2=0) THEN BEGIN

V:=N[I];

N[I]:=N[I-1];

N[I-1]:=V;

END;

WRITELN;

FOR I:=1 TO A DO WRITE(N[I],' ');

END.




  • Информатика
Описание:

Конспект 5-го урока "Обмен между элементами массива " темы Массивы предназначен для учащихся 9-х классов, изучающих Информатику на базовом уровне. На уроке учащиеся с помощью учителя должны придумать алгоритм обмена данными с использованием вспомогательной ячейки, научиться его применять для разных задач. В начале урока для активизации внимания учащихся используется тест Струпа. В конце урока учащиеся узнают, что созданный на уроке алгоритм обмена данными не единственный. На уроке активно используется интерактивная доска Smart.

Автор Медведькова Наталья Александровна
Дата добавления 10.11.2017
Раздел Информатика
Подраздел Конспекты
Просмотров 465
Номер материала MA-072104
Скачать свидетельство о публикации

Оставьте свой комментарий:

Введите символы, которые изображены на картинке:

Получить новый код
* Обязательные для заполнения.


Комментарии:

Популярные курсы