Урок-игра "Циклы в графических программах"

Разделы: Информатика


Цель урока: Закрепить и обобщить знания графических операторов, умения составлять графические программы с циклом.

Задачи урока:

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

Воспитательные: культура труда на уроке, воспитывать внимательность, интерес к предмету

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

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

Оборудование:

- секундомер;
- таблица итогов;
- жетоны двух цветов (каждый жетон – одно очко);
- корзина для жетонов;
- проектор;
- компьютеры со средой Turbo Pascal.

Оформление доски: тема урока, названия команд, таблица «Очки» (заполняется членами жюри)

Ход урока

Организационный момент

Учитель. Ребята, у нас сегодня необычный урок – урок-игра на тему «Циклы в графических программах». Наша игра состоит из 4 конкурсов. За каждый правильный ответ командам будут выдаваться жетоны. По окончании нашей игры мои помощники подсчитают количество жетонов каждой команды. Выиграет та команда, которая наберет наибольшее количество жетонов.

И так, начнем нашу игру. Наша игра начнется с представления команд

Представление команд

Каждая команда должна придумать себе имя, девиз и выбрать капитана команды. На подготовку вам дается 3 мин.

После представления команд помощники пишут на таблице «Очки» имена команд.

Конкурс 1. «Разминка»

Помощники раздают участникам команд пустые листочки. На экране отображаются вопросы, учащиеся пишут на листочках ответы и передают листочки помощникам. За 1 правильный ответ выдается 1 жетон.

Вопросы конкурса:

1. Что происходит с числами в черном ящике?

2. Что выполняют данные фрагменты программ?

а) x:=30;

while x<640 do
begin
            setcolor(2);
            circle (x, 320, 10);
            SetFillStyle (1, 3);
            FloodFill (x, 320, 2);
            x := x + 20;
end;

б) x:=30;
while x < 640 do
begin
            setcolor (4);
            rectangle (x, 200, x + 20, 230);
            SetFillStyle (1, 5);
            FloodFill (x + 10, 210, 4);
            x := x + 40;
end;

Ответы:

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

2.

а) Рисует касающиеся окружности с радиусом равным 10, начиная с точки с координатами (30, 320)
б) Рисует прямоугольники со сторонами 20 и 30, начиная с точки с координатами (30, 200). Расстояние между прямоугольниками равна 20.

Конкурс 2. «Где ошибка»

В этом конкурсе участники должны найти ошибки в приведенных программах. Каждый участник садится за компьютер и отлаживает заданную программу. Член команды, который раньше всех справится с заданием, помогает другим членам команды. За одну исправленную работу выдается 1 жетон.

Задание конкурса. Найдите ошибки в приведенных программах.

1 задание

Uses graph, crt;
Var
            gd, gm: integer;
begin
            gd:=Detect;
            initgraph(gd, gm, ‘’);
x:=20;
y:=20;
while x<640 do
begin
            while y<480 do;
            begin
                        setcolor(2);
                        circle(x, y, 20);
                        setfillstyle(1, 3);
                        floodfill (x, y, 3)
                        y:=y+40;
            end;
            x:=40;
            y:=20;
end;
readln;
            closegraph;
end.

2 задание.

Uses graph, crt;
Var
            gd, gm: integer;
begin
            gd:=Detect;
            initgraph(gd, gm, ‘’);
x:=20;
y:=20;
while x<640 do
begin;
            while y<480 do
            begin;
                        setcolor(2);
                        circle(x, y, 20);
                        setfillstyle(1, 3);
                        floodfill (x, y, 2)
                        y:=y+40;
            end;
            x:=x+40;
            y:=20;
end;
readln;
            closegraph;
end.

3 задание.

Uses graph, crt;
Var
            gd, gm: integer;
begin
            gd:=Detect;
            initgraph(gd, gm, ‘’);
x:=20;
y:=20;
while x<640 do
begin;
            while y<480 do;
            begin
                        setcolor(2);
                        circle(x, y, 20);
                        setfillstyle(1, 3);
                        floodfill (x, y, 2)
                        y:=y+40;
            end;
            x:=y+40;
            y:=20;
end;
readln;
            closegraph;
end.

4 задание.

Uses graph, crt;
Var
            gd, gm: integer;
begin
            gd:=Detect;
            initgraph(gd, gm, ‘’);
x:=20;
y:=20;
while x<640 do;
begin
            while y<480 do
            begin;
                        setcolor(2);
                        circle(x, y, 20);
                        setfillstyle(1, 3);
                        floodfill (x, y, 2)
                        y:=40;
            end;
            x:=x+40;
            y:=20;
end;
readln;
            closegraph;
end.

Конкурс 3. «Кроссворд»

Командам раздаются карточки с кроссвордом. За определенное время команда должка разгадать кроссворд.

По горизонтали:

1. С помощью какого оператора рисуют окружность?
2. Оператор, который рисует прямоугольник.
3. Используя какой оператор можно закрасить замкнутую область?
4. С помощью какого оператора можно выбрать стиль заливки?

По вертикали:

1. Какой оператор рисует линию?
2. Оператор, который рисует эллипс.
3. Используя какой оператор можно выбрать цвет линии?

Конкурс 4. «Эстафета»

Командам даются задания, которые они выполняют на компьютере.

Задание для 1 команды. Нарисовать окружность, которая обегает границы экрана по часовой стрелке.

Задание для 2 команды. Нарисовать окружность, которая обегает границы экрана против часовой стрелки.

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

Первая пара садится за компьютер и начинает писать программу. Их задача – написать программу, с помощью которой круг обегает первую границу. Когда первая пара закончит свою работу, вторая пара должна написать продолжение программы. Их задача – написать программу, с помощью которой круг обегает вторую границу. Затем эстафетная палочка передается первой паре. Она должна продолжить программу – круг обегает третью границу. Завершает эстафету вторая пара. Она должна завершить программу – круг обегает четвертую границу.

После завершения эстафеты помощники проверяют работу учащихся. Если окружность обегает все границы экрана, то выдаются 4 жетона, если 3 границы – 3 жетона и т.д.

Подведение итогов. (5 мин)

Помощники подсчитывают количество жетонов каждой команды и определяют победителя игры.

Приложение