Коллеги - педагогический журнал Казахстана

Наша библиотека

Главная » Файлы » В помощь учителю » Информатика

Открытый урок «Алгоритмы для работы с табличными величинами. Одномерные массивы»
2014-02-04, 1:02 PM
Воробьева Марина Геннадьевна, учитель
информатики КГУ «Средняя общеобразовательная
школа № 17 акимата города Сарани»


Открытый урок «Алгоритмы для работы с табличными величинами. Одномерные массивы»


Цели урока:
формирование знаний и умений учащихся по теме “Массивы”;
выработка первичных навыков решения задач с применением одномерных массивов;
Задачи:
образовательные:
формировать представления об одномерных массивах;
использовать одномерные массивы при работе с программой.
воспитательные:
воспитывать умение слушать,
воспитывать необходимость связывать изучение нового материала с уже известными фактами;
воспитывать ответственность за выполняемую работу, аккуратность при выполнении вычислений;
развивающие:
развивать познавательный интерес, творческую активность учащихся;
развивать умение обобщать материал, логически мыслить;
развивать навыки решения задач прикладного характера.
Тип урока: изучение нового материала, объяснительно-демонстрационный;
Оборудование: компьютер, видеопроектор, интерактивная доска;
Программное обеспечение: программа Turbo Pascal 7.0, MS PowerPoint.
Методы: проблемный, частично-поисковый, исследовательский.
Ожидаемые результаты: овладение умениями и навыками разработки программ с использованием одномерных массивов; самостоятельное выполнение учащимися заданий экспериментального раздела. С заданиями первого уровня должны справиться все. Но каждый учащийся работает в индивидуальном темпе и общие результаты у всех должны быть разные.
Ход урока
1. Организационный момент.
Здравствуйте, ребята! Очень рада встретиться с вами.
2. Мотивационное начало урока. Постановка цели урока.
Учитель: Чтобы сконцентрироваться и настроиться на рабочий лад, начнем наш урок с решения нескольких занимательных задач.
Учитель предлагает три занимательные задачи, ребята устно решают их.
Посмотрите внимательно на экран, перед вами лексическое значение одного слова французского происхождения, которое я выписала из большого энциклопедического словаря. (Текст на слайде:)
- (слово французского происхождения, обозначающее мощный или сплошной) совокупность множества однородных по каким-либо признакам объектов, предметов, данных и т.п., например: жилой…, лесной…, горный…, информационный…
Скажите, какое это слово? Оно будет главным в теме нашего урока. (Массив). Да, действительно это слово – массив, а тема урока – «Одномерные массивы».
Сегодня на уроке вы узнаете:

1. Что такое массив в языке программирования?
2. Какие характеристики имеет массив?
3. Как описать массив на языке Pascal?
4. Какие операции можно производить с элементами массива?
Тема для вас новая, но интересная. От того, насколько вы будете внимательны и аккуратны, зависит результат вашего труда. Каждый из вас получит:
- раздаточные материалы с заданиями;
- творческую карточку учащегося (таблица 1);
- критерии оценки выполненной работы (таблица 2).
3. Объяснение нового материала.

Но давайте ещё раз обратимся к лексическому значению слова массив. Какие, по-вашему, слова определяют сущность понятия массив? (совокупность, множества, однородные). А где ещё вы сталкиваетесь с определением «однородные»? (в русском языке - однородные члены предложения.) Подберите синонимы к этому слову (одинаковые, однотипные). Другими словами можно сказать, что Массив – это пронумерованное множество однотипных объектов, имеющих общее название (имя). Массив относится к структурному типу данных, где в отличие от простых, задается множество значений под одним общим именем.
В жизни мы часто сталкиваемся с такими множествами, например

Назовите окружающие вас в кабинете объекты, которые можно объединить в массивы (окна, столы, компьютеры, ученики класса).

3.1. Характеристики массива

Чтобы разобраться в этом давайте для примера возьмем одноэтажный пятиквартирный дом. Как вы видите в каждой квартире проживает конкретное количество жильцов - это элементы массива. Каждый дом имеет свой адрес: улица, № дома, и у нашего массива тоже есть название массива «А» - это имя массива. Номера квартир - это индекс массива. Количество элементов массива - его размерность. Массив имеет следующие характеристики: 1. имя - название массива; 2. индекс - номер элемента в массиве; 3. элемент - каждое значение в массиве; 4. размерность - количество элементов в массиве.
Закрепление: с примерами: Назовите характеристики массива «книга», «дом».
Существуют различные виды массивов по размерности, в школьном курсе вы познакомитесь с двумя – одномерными и двумерными. Перед вами на экране примеры объектов, представляющих такие массивы (на слайде изображения шкафа с одинаковыми ящиками и зрительный зал). Если за каждым элементом массива закреплен 1 порядковый номер, то такой массив называют одномерным (линейным, вектором). Назовите их характеристики.

3.2. Описание массива на языке Pascal

Вспомните, в каком разделе программы описываются переменные? (в разделе Var). Массив также задаётся в разделе Var.

Формат описания: массива

Имя массива: array [начальный индекс..конечный индекс] of тип данных;
Где: array – служебное слово (в переводе с английского означает «массив», «набор»);
of – служебное слово (в переводе с английского означает «из»);
[начальный индекс . . конечный индекс ] - размер.
Тип индексов - любой скалярный тип кроме real. Индексы можно вычислять. Тип элементов - любой, за исключением файлового. Если массивы одинаковы и отличаются лишь именами, то их можно описать в одной строке: С, Mas: array [1..25] of integer;
Закрепление: Попытайтесь самостоятельно описать массивы, выполняя задания: (время выполнения 2-3 минуты): Сколько элементов в этом массиве? Какого они типа? Как они нумеруются?
1. M : array [1..4] of real;
2. Z : array [-8..-1] of integer;
3. Mass : array [5..12] of integer;
Сравните свои результаты с образцом, исправьте ошибки (слайд с правильными ответами).

3.3. Обращение к ячейке массива. Использование элемента массива.
Для обращения или использования элемента указывается имя массива и в квадратных скобках индекс этого элемента. Например:
Read(A[1]); A[3]:=(2 * x + 6); A[4]:=(A[1]+A[2]) * A[3];
Допустимые операции определяются типом элемента (элемент массива ничем не отличается от обычной переменной, кроме особенного написания имени). Над элементом массива чаще всего выполняются такие действия как:
а) поиск значений;
б) сортировка элементов в порядке убывания или возрастания;
в) подсчет элементов массива, удовлетворяющий заданному условию.

3.4. Заполнение одномерного массива.
Рассмотрим заполнение массива. Существует несколько способов заполнения массива. Мы рассмотрим три способа: с клавиатуры; с помощью датчика случайных чисел; с помощью формулы.

3.4.1. Заполнение массива с клавиатуры.

Рассмотрим пример заполнения массива А пятью целыми числами с клавиатуры. Для того чтобы организовать ввод исходных данных в массив, нужно использовать цикл. То есть обращение к элементам массива происходит в цикле, по очереди от 1 до 5.
for i:=1 to 5 do
begin
writeln('a[', i, ']=');
readln ( a );
end;

3.4.2. Заполнение массива случайными числами

Рассмотрим следующий пример: нам нужно заполнить массив А с помощью генератора случайных чисел. Размерность массива = 10. Функция получения случайных чисел из заданного интервала [0, М-1] выдает целые числа из этого интервала: random (М)
Итак, чтобы заполнить массив например десятью целыми числами из интервала [1,100] запишем фрагмент программы:
for i:=1 to 10 do
begin
a[i]:=random(101); {числа от 1 до 100}

3.4.3. Заполнение массива с помощью формулы

Давайте разберем следующий пример: Заполнить одномерный массив В из 8 чисел по формуле b[i]:=i*3.
var b: array [1..10] of integer;
i: integer;
begin
for i:=1 to 10 do
b[i]:=i*3;
Вы уже поняли, что для ввода данных в память необходимо организовать цикл. Не знаю как у вас, а у меня возник вопрос: почему при заполнении массива используется цикл с параметром? (Ответ: Потому что число повторений ввода данных известно, удобно использовать цикл с параметром).

3.5. Вывод значений элементов массива

Следующим вопросом нашего урока является вывод массива. Рассмотрим вывод массива из 5 целых чисел.

Пример 1. Ввод и вывод элементов одномерного массива
Program mas1;
Uses crt;
var
А: array[1..5] of integer;
i: integer;
Begin
writeln('введите элементы массива');
for i:=1 to 5 do readln(a[i]);
writeln('вывод элементов массива:');
for i:=1 to 5 do write(a[i]:2);
Readkey;
end.
Для рассмотрения 3-х вариантов заполнения массива. Воспользуйтесь модулем: «Массивы». Блок № 1, находящемся на вашем столе. Давайте разберем 3 примера программ:

Пример2: Имеется 10 чисел. Необходимо найти их сумму. (В данной задаче все элементы массива вводятся с клавиатуры).
program primer1;
uses crt;
var s,i:integer;
a:array[1..10] of integer; {Описание массива}
Begin
Clrscr;
for i:=1 to 10 do begin {Ввод элементов массива}
writeln('Введите a[',i,']');
read (a[i]); end;
writeln('Введённый массив'); {Вывод элементов массива}
for i:=1 to 10 do
write (a[i],’ ’);
s:=0;
for i:=1 to 10 do {Нахождение суммы}
s:=s+a[i];
writeln('Сумма элементов массива =', s );
readkey; End.

Пример3: Заполнить одномерный массив С с помощью генератора случайных чисел. Размерность массива = 10. Найти сумму элементов массива.
program primer2; uses crt;
var
С: array [1..10] of integer;
s,i:integer;
Begin
Clrscr;
Randomize;
for i:=1 to 10 do begin
с[i]:=random(101); {Генератор случайных чисел числа от 1 до 100}
writeln (с[i]); end;
s:=0;
for i:=1 to 10 do {Нахождение суммы}
s:=s+с[i];
writeln('Сумма элементов массива =', s );
readkey;
End.

Пример4: Заполнить одномерный массив В, состоящий из 8 чисел по формуле b[i]:=i*3.
program primer3;
uses crt;
var b: array [1..8] of integer;
i: integer;
begin
for i:=1 to 8 do b[i]:=i*3;
for i:=1 to 8 do write('b [‘,I, ]=', b[i]:3 );
s:=0;
for i:=1 to 8 do s:=s+b[i];
writeln('Сумма элементов массива =', s );
readkey; End.

4. Этап обобщения, систематизации знаний и закрепление изученного.

[i]Вопросы для повторения:

1) Что называют массивом?
2) Что такое размерность массива? (Количество элементов массива называется его размерностью. Размерность массива равна: максимальное значение индекса – минимальное значение индекса + 1)
3) Как можно обратиться к ячейке массива?
4) Какого типа могут быль элементы массива?
5) Какие действия выполняют обычно над элементами массива? (Можно делать все, что с любой переменной).
6) Какого типа может быть индекс массива?
7) Как можно осуществить ввод элементов массива?
8) Какими способами может быть заполнен массив? Приведите примеры.

А сейчас я предлагаю вам разбиться по парам. Выберите в модуле свой уровень с заданиями, разберите их и совместно напишите программы.
Тренировочные задания для самостоятельной работы:
Уровень А. Имеется целочисленный массив, состоящий из 15 элементов:
a) Найти сумму a[1] и a[7] элементов;
b) Найти разность a[9] и a[3] элементов;
c) Найти среднее арифметическое всех элементов массива;
d) Найти произведение всех элементов массива.

Уровень В. Имеется целочисленный массив, состоящий из 10 элементов:
a) Найти полусумму первых 3-х элементов массива;
b) Увеличьте массив, введенный с помощью генератора случайных чисел, в 2 раза;
c) Заполните его случайными числами. Вывести положительные элементы массива.
d) Введите его с клавиатуры, после чего измените у всех чисел знак на противоположный.
Уровень B. (Листинг программы B-b)
Program z_mass_1;
uses crt;
Var B,A: array[1..10] of integer;
i: integer;
Begin
Write (введите элементы массива А через пробел ');
For i:=1 to 10 do begin
Read(a[i]);
B[i]:= A[i]*2; end;
writeln('вывод элементов массива ');
For i:=1 to 10 do begin
write (B[i]:2); end;
readkey; End.

Уровень С. Имеется вещественный массив В, состоящий из 9 элементов:
a) Найти сумму, среднее арифметическое и произведение всех элементов массива.
b) Определить самую высокую температуру и самый теплый день в мае.
c) Расположить массив произвольным образом, с помощью генератора случайных чисел и подсчитать количество элементов массива, больших заданного числа k.
d) Найти максимальный элемент и его индекс.
e) Дан массив, состоящий из нулей и единиц. Подсчитать количество 0, количество 1 и количество нулей до первой единицы.

Уровень С. (Листинг программ С-b, C-c)

Задание С-b. Определить самую высокую температуру и самый теплый день в мае.
Program massiv;
Uses crt;
Var t:array [1..31] of integer;
I, max, n : integer;
Begin
Clrscr;
For i:=1 to 31 do Begin
t[i]:=random(20); Write(b[i], ‘ ‘); End;
Max:=t[1]; n:=1;
For i:=2 to 31 do Begin
If t[i] > max then max:=t[i]; n:=i ; End;
Write(‘максимальная температура’, max, ‘в’, n, ‘день’); End.

Задание С-с. Задан одномерный массив В(10),заполненный произвольным образом. Подсчитать количество элементов массива, больших заданного числа k.
Program massiv;
Uses crt;
Var b:array [1..10] of integer;
I, k, s : integer;
Begin
Clrscr; S:=0;
For i:=1 to 10 do Begin
Write(‘Введите’, i, ‘-й элемент массива ’);
Readln (B[i]);
Write(b[i], ‘ ‘);
End;
Write(‘Введите число k’);
Readln(k);
For i:=1 to 10 do
If b[i]>k then s:=s+1;
Write(‘Количество элементов’, s);
End.

Задание С-d. Дан одномерный массив K из 10 целых элементов, найти максимальный элемент и его индекс.
Program Poisk_2;
Const maxM=10;
Var К: array[1..maxM] of integer;
Max, i, j: integer;
Begin
Randomize;
For i:=1 to maxM do begin
К[i]:=random(101);
write(К[i]);
end;
Max:=K[1];
J:=1;
for i:=2 to maxM do
if Max<K[i] then begin max:=K[i]; j:=i; end;
writeln('Максимальный элемент=', max);
writeln('Индекс макс. элемента=', j);
End.
(Во время практики, когда учащиеся работают за компьютером, учитель наблюдает за их работой; следит за правильной посадкой, выступает в роли консультанта, отвечает на вопросы учеников, по ходу проверяя знания учащихся тех или иных операторов, задавая некоторым ученикам вопросы. Учащиеся работают в индивидуальном темпе. Ученики, успешно выполняющие задания, получают положительные оценки.)

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

Учитель: Спасибо ребята вам за работу. Вы работали дружно, слаженно, оказывали помощь друг другу. Особенно хорошо сегодня поработали … (называет имена и фамилии учеников, оценки)
Домашнее задание: Ермеков Н.Т. и др. Информатика (Паскаль). i1.15.Алгоритмы для работы с большими величинами. Массивы. - стр.91-97. Повторить все операции с массивами, кто не успел выполнить задачи в классе, проработать их дома.
Давайте подведём итог нашего урока. Обратитесь к «Творческой карточке учащегося» и «Критериям оценки выполненной работы». Прошу Вас заполнить эти таблицы.
Категория: Информатика | Добавил: Марина7638
Просмотров: 1623 | Загрузок: 0 | Комментарии: 3 | Рейтинг: 4.0/1
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Пятница, 2024-04-19, 4:22 PM
Приветствую Вас Гость

Форма входа

Категории раздела

Психология [194]
Педагогика [338]
Математика [864]
Физика [274]
История [385]
Классному руководителю [571]
Русский язык и литература [770]
Физическая культура [246]
Английский язык [456]
Искусство [204]
Родительский совет [19]
Биология [360]
Информатика [398]
Начальная школа [2040]
Мой Казахстан [258]
Технология [147]
Самопознание [197]
Технология труда [66]
Персональная рубрика учителя технологии труда Шукурова Суюнгали Сагинтаевич. Западно-Казахстанская область,Жанибекский район,СОШ имени Т.Жарокова
НВП и ОБЖ [47]
Профессиональное образование [180]
Дошколенок [574]
География [142]
Школьная библиотека [55]
Казахский язык и литература [642]
Химия [54]

Социальные закладк

Поиск

Друзья сайта

Академия сказочных наук

  • Теги

    презентация Ирина Борисенко открытый урок информатика флипчарт животные новый год 9 класс 5 класс творчество Казахские пословицы проект конспект урока 6 класс физика язык класс педагогика стихи Казахстан математика урок праздник наурыз познание мира музыка доклад программа литература география природа сценарий семья воспитание классному руководителю осень игра казахский язык и литература викторина Начальная школа тест конкурс ИЗО внеклассная работа литературное чтение Русский язык 3 класс технология воспитательная работа сказка Здоровье Оксана 8 марта искусство независимость английский язык психология учитель 3 класс биология статья внеклассное мероприятие классный час ЕНТ выпускной школа 1 класс Русский язык ЕГЭ тесты химия начальные классы Дети экология Дошкольники любовь разработка урока казахский язык самопознание Английский родители br конспект спорт критическое мышление патриотизм дружба дошколенок История обучение тренинг разработка 7 класс физическая культура игры КВН занятие детский сад физкультура Абай коучинг

    Статистика

    Рейтинг@Mail.ru