Хотите получать новые статьи блога
прямо себе на почту?
Укажите свой e-mail:


WorldSkills Russia
Яндекс.Метрика Интернет-издание Профобразование

Обработка одномерных массивов:
вставка и удаление элементов.

0

ПЛАН УЧЕБНОГО (ПОУРОЧНОГО) ЗАНЯТИЯ

Дата: 14.11.2014 г.

Группа: КС-21

Тема урока: Обработка одномерных массивов: вставка и удаление элементов.

Учебно-воспитательные (цели) задачи:

Дидактическая (обучающая):

  • формировать понятия массива, знаний характеристик массивов и их элементов;
  • овладение умениями и навыками по обработке одномерных массивов;

Развивающая:

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

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

  • формирование умения применять на практике полученные знания;
  • воспитание эстетических навыков при составлении ментальных карт.

Тип учебного занятия: комбинированный.

Учебно-методическое обеспечение: ноутбук, проектор, интерактивная доска, программное обеспечение PascalABC.NET, презентация к уроку.

Обработка одномерных массивов: вставка и удаление элементов Скачать материал лекции в формате PDF и презентацию

Методы обучения: составление ментальных карт, вербальный, наглядный, практический, репродуктивный.

ХОД УРОКА

1. Организационный момент (оргмомен). Доведение задач и структуры урока. Мотивация учебной деятельности.

Проверка ментальных карт. Работа над ошибками. Составление ментальной карты по теме «Массивы».

Во всех сферах нашей жизни мы имеем дело с информацией.

От того:

  • как мы ее воспринимаем,
  • как мы ее «обрабатываем»,
  • как мы ее организуем,
  • как запоминаем,
  • насколько быстро, точно и наглядно – зависит очень многое.

Ментальные карты это альтернатива «плоской» текстовой схеме фиксирования информации (конспектирование, записи, пометки и пр.), которая не очень-то приспособлена к структурированию и запоминанию информации.

Ментальные карты как бы вносят третье измерение в этот процесс – информацию в них очень удобно организовывать, и ее элементы очень легко связывать между собой. И к тому же карты «оживляют», визуализируют фиксируемую информацию с помощью разных приемов (картинки, значки, цвета, контуры – «облачки» и пр.). И это очень помогает как ее «опознованию» с одного взгляда, так и запоминанию.

— Вы ужели имели опыт построения интеллект-карт. С чего следует начинать?

/С центрального образа/

— Сегодня центральным образом у нас будет слово «Массив». Попробуем нарисовать для него ментальную карту.

2. Контроль знаний и умений студентов (или актуализация изученного учебного материала).

Решение задач по теме прошлого занятия с использованием вспомогательных карточек:

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

3. Изучение нового учебного материала.

— Сегодня мы продолжим изучать способы обработки одномерных массивов. Запишите план лекции:

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
program p1;
var
    a:array[1..100] of real;
    i, n: integer;
begin
    write('Введите количество элементов в массиве n=');
    readln(n);
 
    //ввод массива с клавиатуры
    writeln('Исходный массив:');    
    for i:=1 to n do
    begin
      write('a[',i,']=');
      readln(a[i]);
    end;
    writeln;
 
    {1 - сдвигаем элементы на одну позицию влево}
    {вначале i:=1, потому что надо удалить 1-ый элемент}
    for i:=1 to n-1 do
      a[i]:=a[i+1];
    {2 - уменьшаем количество элементов в массиве}
    n:=n-1;
 
    //вывод массива на экран
    writeln('Новый массив:');
    for i:=1 to n do write(a[i],' ');
 
    readln;
end.

— Как бы мы решали задачу, если необходимо было удалить 3-й элемент, 5-й элемент.

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

Обработка одномерных массивов: вставка и удаление элементов

(Решение при помощи вспомогательных карточек)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
program p2;
var
    a:array[1..100] of integer;
    i, n: integer;
    max: integer; //максимальный элемент в массиве
    imax: integer; //порядковый номер максимального элемента
begin
    write('Введите количество элементов в массиве n=');
    readln(n);
 
    //ввод массива с клавиатуры
    writeln('Исходный массив:');    
    for i:=1 to n do
    begin
      write('a[',i,']=');
      readln(a[i]);
    end;
    writeln;
 
    // поиск индекса максимального элемента массива
    {1} max:=a[1];
    {2} for i:=2 to n do 
    {2}   if a[i]>max then imax:=i;  
 
 
    {1 - сдвигаем элементы на одну позицию влево}
    {вначале i:=1, потому что надо удалить 1-ый элемент}
    for i:=imax to n-1 do
      a[i]:=a[i+1];
    {2 - уменьшаем количество элементов в массиве}
    n:=n-1;
 
    //вывод массива на экран
    writeln('Новый массив:');
    for i:=1 to n do write(a[i],' ');
 
    readln;
end.

Обработка одномерных массивов: вставка и удаление элементов

В языке Pascal имеются процедуры увеличения и уменьшения переменной целого типа:

  • Inc — увеличение значения переменной.

Обработка одномерных массивов: вставка и удаление элементов

где x — переменная целого типа;
n — целочисленное выражение.

В первом случае переменной x присваивается следующее значение (например, x была равна 10, тогда после выполнения inc(x) x равна 11). Таким образом, можно сказать, что запись inc(x) эквивалентна записи x:=x+1. Можно также сказать, что запись inc(x,n) эквивалентна записи x:=x+n.

  • Dec – уменьшение значения переменной.

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

Обработка одномерных массивов: вставка и удаление элементов

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
program p3;
var
    a:array[1..100] of integer;
    i, n: integer;
    max: integer; //порядковый номер максимального элемента
begin
    write('Введите количество элементов в массиве n=');
    readln(n);
 
    //ввод массива с клавиатуры
    writeln('Исходный массив:');    
    for i:=1 to n do
    begin
      write('a[',i,']=');
      readln(a[i]);
    end;
    writeln;
 
    // поиск индекса максимального элемента массива
    {1} max:=1;
    {2} for i:=2 to n do 
    {2}   if a[i]>a[max] then max:=i;
 
    {вставляем 0 после максимального элемента}
    {сначала сдвигает "хвост" массива вправо}
    for i:=n downto max+1 do
    a[i+1]:=a[i];
    {заносим в следующий за максимальным элемент 0}
    a[max+1]:=0;
    {увеличиваем количество элементов массива}
    Inc(n);
 
    //вывод массива на экран
    writeln('Новый массив:');
    for i:=1 to n do write(a[i],' ');
 
    readln;
end.

Данная программа демонстрирует модульный подход к решению задач – задача разбивается на подзадачи, полученные подзадачи решаются отдельно. Если подзадача не решается непосредственно, то она снова разбивается на подзадачи и т.д. Такой подход называется «программирование сверху вниз».

Данная программа таит в себе ошибку. Если n=20, то после вставки еще одного элемента n станет равной 21, и, скорее всего, программа повиснет (потому что элементов в массиве может быть НЕ БОЛЬШЕ 20). Следовательно, при вставке элементов необходимо следить, чтобы было n<=maxN .
4. Закрепление нового учебного материала.

— Что происходит с размерностью массива при удалении из него элемента?

/Размерность массива уменьшается на 1 /

— Что происходит с размерностью массива при вставке в него нового элемента?

/Размерность массива увеличивается на 1/

Дорисовка интеллект карты «Массивы».

Обработка одномерных массивов: вставка и удаление элементов

5. Выдача домашнего задания (инструктаж).

Обработка одномерных массивов: вставка и удаление элементов

6. Подведение итогов урока.

Выставление оценок.

Преподаватель (ФИО): Вечеркина Анна Игоревна


Возникли вопросы?
Тогда смело пишите комментарий — рада буду ответить!
Агрегирование и групповые функции