Деловая игра "Использование компонента таблиц для работы с двумерными массивами"

Тема урока Использование компонента таблиц для работы с двумерными массивами.
Форма урока: Деловая игра. (2 часа)
Тип урока: закрепление изученного материала.
Оборудование: ПК, карточки, фишки, проектор, презентация , ПО Delphi, MS Word
Цели:
Закрепить приемы решения задач на осуществление поиска в двумерном массиве
(нахождение суммы элементов массива, элемента по условию, суммы по столбцам и т.
д.), с использованием компонента StringGrid
Продолжить развивать алгоритмическое мышление, умение работать в среде Delphi,
быстрый набор текста программы, а также умение моделировать.
Воспитывать культуру общения, аккуратность
Ход урока
1. Организационный момент (1 минута)
2. Постановка цели урока (9 минут)
Ребята, пройдет немного времени, и вы обязательно будете работать в крупных
престижных компаниях. Очень часто фирмы участвуют в тендерах на разработку
программного обеспечения. На этом уроке я предлагаю вам представить себя в роли
сотрудника компании, которая участвует в тендере и провести занятие в форме
деловой игры.
Кто может сказать, что такое тендер? (Ответы обучающихся)
Тендер - конкурсный отбор исполнителей для выполнения работ, предоставления услуг.
Вы должны быть целеустремленными и активными, сосредоточенными на решении
задачи для того чтобы Ваша фирма могла выиграть тендер.
Тема урока Использование компонента таблиц для работы с двумерными массивами.
Сегодня вы должны показать , как вы усвоили материал по обработке данных в
двумерном массиве и научились использовать компонент StringGrid при работе с
массивами, и как вы можете применять этот материал на практике для решения задач.
Как я сказала урок будет проходить в виде деловой игры. У нас имеется 4 группы. 3
группы представляют тех. отдел компаний по разработке ПО, 4-ая -группа экспертов.
У каждой компании есть название. Обучающиеся придумывают названия своих фирм и
другие атрибуты компании сами. Каждая компания состоит из:
Программиста-теоретика - получает задание ответить на вопросы
Программиста-аналитика - должен установить соответствие между видами
алгоритмов и блок-схемами , составлять блок схемы
Программиста-лингвиста - исправляет ошибки в программном коде и формулирует
соответствующие ошибкам синтаксические правила языка , нужно выяснить условие
задачи и объяснить, как она работает
Программиста-исследователя- создает программы, исследуют готовую программу
Учитель объявляет правила деловой игры (эти правила лежат на столах,
распечатанные):
Правила деловой игры:
Первый этап игры блиц-турнир. Каждая компания участвующая в тендере
демонстрирует уровень своих сотрудников, отвечая на вопросы. На первые 7 вопросов
отвечает программист -теоретик. Каждый правильный ответ теоретиком
оценивается в 2 балла. Если подсказывает команда, то ответ оценивается 1 балл. Если
команда затрудняется в ответе, отвечает другая команда. В этом случае ответ
оценивается -1 балл.
Следующие 3 задачи решает программист-лингвист, оценивается аналогично
предыдущему пункту.
Задание "расставь блоки по порядку"оценивается в 1 балл, за правильный ответ, +1 за
объяснение. Выполняется программистом-аналитиком.
Второй этап Составление блок схемы и написание программы. Составление правильной
блок схемы оценивается в 2 балла, объяснение блок-схемы - 2 балла. Выполняется
программистом-аналитиком.
Программный продукт оценивается 4 баллами, за оригинальный дизайн +2 балла, за
рациональное решение +2балла.
Задача компании: Составить и объяснить суть программы. Выполняется
программистом-исследователем.
По истечению времени 30 минут группа экспертов объявляет смотр-конкурс
программных продуктов.
Компания , является “продавцом” своей продукции и предлагает свою программу, т.е.
объясняет решение
Принимающая группа экспертов тщательно проверяет программу, задает вопросы по
существу, просит разъяснить некоторые места программы.
Каждая компания, которая не сделала программу, обязана купить готовый программный
продукт.
После выполнения каждого задания группа экспертов подсчитывает количество
заработанных баллов и выдает соответствующее количество фишек компаниям, а
начальники отделов заносят соответствующие записи в оценочный лист сотрудника.
После защиты программных продуктов группа экспертов заполняет сводную оценочную
таблицу и объявляет победителя тендера.
Компании представляют своих сотрудников.
Предлагаю начать нашу игру с блиц- турнира в котором каждая компания покажет
уровень своих сотрудников. Желаю вам всем удачи!
3. Актуализация опорных знаний(20 минут)
Вопросы 1 фирме: отвечает программист -теоретик.
Что такое массив? (Упорядоченный по индексам ограниченный набор данных одного
типа или совокупность конечного числа данных одного типа)
Где должен быть описан, используемый в программе массив? (Либо в разделе описания
переменных, либо в разделе описания типов)
Какого типа должен быть индекс? (Типа диапазон)
Какие способы формирования (заполнения) массивов вы знаете?(случайные числа,
ввод с клавиатуры, вычисления)
Как обратиться к элементу массива? (указав имя массива и индекс элемента)
Какой компонент используется для вывода массива? (StringGrid)
Как обратиться к ячейки таблицы StringGrid (указать свойство Cells и индексы
(номер столбца и номер строки))
Вопросы 2 фирме:
Что такое размерность массива? (количество элементов)
Дать определение одномерного массива.( совокупность конечного числа данных
одного типа)
Как обращаться к элементам двумерного массива? (Имя массива [индекс по
строкам..индекс по столбцам])
Чем однозначно определяется значение элемента массива? (Его индексами)
Назовите простые типы используемые в массиве? (char, boolean, integer)
Назовите свойства StringGrid для обозначения зафиксированных ячеек (FixedRows,
fixedCols)
Назовите свойства StringGrid где содержится количество строк и количество столбцов
компанента StringGrid (СolCount, RowCount)
Вопросы 3 фирме:
Как описывается одномерный массив? (var имя массива: array
[нижняяГраница..верхняяГраница] of тип ээлементов)
Двумерный массив? ( var имя массива:
array[нижняяГраницаиндекс1..верхняяГраницаИндекс1,
нижняяГраницаИндекс2..верхняяГраницаИндекс2] of тип элементов)
Что можем использовать в качестве индекса? (Выражение, константу, переменная)
Что фактически указывает тип индекса? (Количество строк, столбцов)
Какой тип может быть типом индекса? (Любой простой тип)
Назовите основное свойство компонента StringGrid где хранится значение каждой
ячейки? (Cells)
Свойство StringGrid где можно задать множество параметров различных режимов
работы и способов отображения таблицы.(Options)
Нашими фирмами уже было создано несколько программ, но конкуренты тайком
пробрались в технический отдел и поменяли порядок действий в некоторых программах.
Фрагменты этих программ лежат перед вами. 1 компания Вывести на экран нечетные
элементы двумерного массива и их количество.
2 компания Вывести на экран отрицательные элементы двумерного массива и их
количество.
3 компания Вывести на экран элементы двумерного массива которые >12 и их
количество.
Ваша задача - сложить блоки этих фрагментов по порядку. Задание выполняется в
программистами- лингвистами.
Обучающиеся работают с заготовками, которые располагаются на столах
Ответ для первого варианта: ТЕХНИКА
Ответ для второго варианта: ПРОФИЛЬ
Ответ для второго варианта: МОНИТОР
Какое слово у вас получилось?
Кто справился без ошибок?
Можно было ли изменить порядок каких-нибудь блоков, но чтобы результат остался
тем же? Каких?
Закрепление и развитие ЗУН (40 минут)
Ну что ж, вы справились с квалификационными задачами. Попробую дать вам более
серьезное задание.
К нам поступила заявка от директора хлебозавода г. Алматы. Ему нужно, чтобы наши
компании составили программы, которая выводила бы отчет за неделю.
Эту заявку вы видите у себя на столах.
На заводе работает 12 бригад по изготовлению деталей. Количество деталей, которое
производит 1 бригада в 1 день, колеблется от 650 до 970 единиц. Нужно составить
отчет работы за неделю.
Вывести таблицу, в которой видно, сколько каждая бригада изготовляет деталей
каждый день в течение недели.
Найти прибыль, которую получит завод, от продажи всех деталей, изгатовленных за
неделю, по оптовой цене –1500 тенге за деталь.
Вывести номер бригады, которой будет начислена премия (план в какой либо день
превысил 1150 деталей), а также количество деталей, которое она изготовила.
Посчитать и вывести в отдельный одномерный массив, сколько деталей изготавливает
каждая бригада за неделю.
На первом этапе программисты - аналитики составьте блок-схемы, которые помогут
вам на втором этапе составить программы.
Обучающиеся составляют блок-схемы. Программисты- исследователи, садятся за
компьютер и составляют программу, делают ее отладку. По возможности все части
программы собираются воедино.
Во время составления программы группа экспертов отвечает на тестовые вопросы с
объяснением варианта ответа , подтверждая свою состоятельность как эксперта.
Программисты аналитики защищают блок схемы.
Подведение итога урока(15 минут):
"Эксперты" объявляют конкурс-смотр готовых программ.
“Эксперты” анализируют и оценивают работу компаний, заполняют сводную оценочную
таблицу
"Эксперты" дают заключение полностью по всей игре, объявляют победителя тендера,
выставляют оценки с комментариями.
А) оригинальное решение;
Б) рациональное решение.
Постановка домашнего задания (5 минут)
Домашнее задание дифференцированно по сложности 3 уровня:
Сформировать целочисленный массив (6×6), заполненный случайным образом.
Заменить нулями элементы третьей строчки.
Чётные элементы второго столбца увеличить на 100, распечатать получившийся
массив.
В четвёртом столбце найти количество элементов, которые больше 40.
*Распечатать строчку, в которой находится минимальный элемент массива (если таких
элементов несколько и находятся в разных строчках, то любую из них).
**Сформировать одномерный массив, каждый элемент которого равен сумме элементов
соответствующего столбца.
Обучающиеся записывают домашнее задание в тетради.