СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до 13.07.2025

Готовые ключевые этапы урока всегда будут у вас под рукой

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

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Графика и использование операторов цикла for и while в языке программирования Паскаль

Категория: Информатика

Нажмите, чтобы узнать подробности

Учебное занятие по данной теме позволит познакомить обучающихся с графическими возможностями языка программирования Pascal. Сформировать навыки и умения составлять программы с использованием графики и с использованием оператора цикла с предусловием while, а также с оператором цикла for (цикла с параметром). Научиться создавать рисунки с использованием операторов графики языка программирования Pascal и организовывать движение созданного рисунка с помощью оператора цикла с предусловием while и оператора цикла for (цикла с параметром).

Просмотр содержимого документа
«Графика и использование операторов цикла for и while в языке программирования Паскаль»

ПЛАН-КОНСПЕКТ

учебного занятия кружка «Компьютер и информационные технологии»


Тема учебного занятия: «Графика на языке программирования Pascal. Использование оператора цикла с предусловием while и оператора цикла for (цикла с параметром) в программах»


Цель учебного занятия: научиться создавать рисунки с помощью операторов графики языка программирования Pascal. Организовать движение созданного рисунка с помощью оператора цикла с предусловием while и оператора цикла for (цикла с параметром).


Задачи учебного занятия:


Образовательная: познакомить обучающихся с графическими возможностями языка программирования Pascal. Сформировать навыки и умения составлять программы с использованием графики и с использованием оператора цикла с предусловием while, а также с оператором цикла for (цикла с параметром). Научиться создавать рисунки с использованием операторов графики языка программирования Pascal и организовывать движение созданного рисунка с помощью оператора цикла с предусловием while и оператора цикла for (цикла с параметром).


Развивающая: развитие навыков и умений работы с графикой в Pascal и с оператором цикла с предусловием while, а также с оператором цикла for (цикла с параметром).


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


Методы работы: беседа, практическая работа на ПК.


Формы работы: индивидуальная.


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


Дидактические материалы: карточки с заданиями.


План.

  1. Организационный этап.

  2. Постановка цели и задач учебного занятия. Мотивация учебной деятельности обучающихся.

  3. Актуализация знаний.

  4. Первичное усвоение новых знаний.

  5. Первичная проверка понимания.

  6. Первичное закрепление.

  7. Рефлексия (подведение итогов учебного занятия).



Ход учебного занятия.



  1. Организационный этап.

Приветствие, проверка присутствующих.

  1. Постановка цели и задач учебного занятия. Мотивация учебной деятельности обучающихся.

На доске представлены слово «Pascal» и изображения (Приложение 1).

Обучающиеся самостоятельно называют тему учебного занятия, цели и задачи. На доске записываются цели и задачи.

  1. Актуализация знаний.

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

begin

- язык программирования

Repeat … until

- графический модуль

For i:=1 to n do

- начало программы

Line (x1,y1,x2,y2)

- процедура рисует прямоугольник, где (x1,y1) – координаты начала диагонали прямоугольника, (x2,y2) – координаты конца диагонали прямоугольника

Arc(x1,y1,α1, α2,r)

- процедура строит окружность с центром в заданной точке, где (x1,y1) – координаты центра окружности, r – радиус окружности

Rectangle(x1,y1.x2,y2)

- цикл с постусловием

Fillellipse(x1,y1,rx,ry)

- процедура строит дугу окружности с центром в заданной точке, где (x1,y1) – координаты центра окружности, α1 – начало дуги (в градусах), α2 – конец дуги (в градусах), r – радиус окружности

Circle(x1,y1,r)

- процедура соединяет линией точки, заданные с помощью их координат, где (x1,y1) – координаты начала линии, а (x2,y2) – координаты конца линии

Uses GraphABC;

- конец программы

Pascal

- цикл с предусловием

end.

- процедура строит заполненный эллипс, где (x1,y1) – координаты центра эллипса, rx – радиус по OX, ry - радиус по OY

While … do

Цикл с параметром

Setlinestyle(вид,образец,толщина)

- процедура строит прямоугольник, используя текущий цвет и способ заполнения, где (x1,y1) – координаты начала диагонали прямоугольника, (x2,y2) – координаты конца диагонали прямоугольника

Putpixel(x1,x2,№ цвета)

- процедура заполняет ограниченную область текущим орнаментом

Bar (x1,y1,x2,y2)

- процедура рисует дугу эллипса с центром в заданной точке, где x и y – координаты центра эллипса, н.уг. – начало дуги в градусах, к.уг. – конец дуги в градусах, rx – радиус по OX, ry - радиус по OY

Setfillstyle(Pattern: word,Color:word)

- процедура задаёт толщину и форму линии. Коды типов линии: 0 – сплошная, 1 - -пунктирная, 2 – штрих-пунктирная, 3 – штриховая, 4 – заданная пользователем, 1 – тонкая, 3 - толстая

Ellipse(x,y,н.уг.,к.уг., rx,ry)

- процедура высвечивает пиксель (точку) с заданными координатами, где (x1,y1) – координаты точки, № цвета – цвет, которым высвечивается точка

Floodfill(x,y,№ цвета)

- процедура устанавливает стандартный орнамент и цвет для заполнения ими фигур



Повторяем операторы графики, а также как выглядят фигуры, построенные с помощью этих операторов.

Повторяем как в программе работает оператора цикла с предусловием while и оператор цикла for (цикл с параметром).



  1. Первичное усвоение новых знаний.

Когда вы решали задачи на линейный алгоритм, условный оператор и т.д., вы подключали текстовый модуль Uses Crt. Для работы в графическом режиме необходимо подключение модуля Graph.

Вспомнить систему координат. Изображение, которое мы видим на экране компьютера, представлено в виде пикселей. Графический экран Pasсal (по умолчанию) содержит 640 точек по горизонтали и 400 точек по вертикали.

SetPixel(x,y,color) - Закрашивает цветом color точку с координатами (x, y);

Line(x1,y1,x2,y2) - Рисует отрезок из точки с координатами (x1,y1) в точку с координатами (x2,y2);

Arc(x1,y1,α1, α2,r) - процедура строит дугу окружности с центром в заданной точке, где (x1,y1) – координаты центра окружности, α1 – начало дуги (в градусах), α2 – конец дуги (в градусах), r – радиус окружности;

Rectangle(x1,y1.x2,y2) - процедура рисует прямоугольник, где (x1,y1) – координаты начала диагонали прямоугольника, (x2,y2) – координаты конца диагонали прямоугольника;

Fillellipse(x1,y1,rx,ry) - процедура строит заполненный эллипс, где (x1,y1) – координаты центра эллипса, rx – радиус по OX, ry - радиус по OY;

Setlinestyle(,,) - процедура задаёт толщину и форму линии. Коды типов линии: 0 – сплошная, 1 - -пунктирная, 2 – штрих-пунктирная, 3 – штриховая, 4 – заданная пользователем, 1 – тонкая, 3 – толстая;

Putpixel(x1,x2,№ цвета) - процедура высвечивает пиксель (точку) с заданными координатами, где (x1,y1) – координаты точки, № цвета – цвет, которым высвечивается точка;

Bar (x1,y1,x2,y2) - процедура строит прямоугольник, используя текущий цвет и способ заполнения, где (x1,y1) – координаты начала диагонали прямоугольника, (x2,y2) – координаты конца диагонали прямоугольника;

Setfillstyle(Pattern: word,Color:word) - процедура устанавливает стандартный орнамент и цвет для заполнения ими фигур. Коды орнамента заполнения для Setlinestyle: 0 – заполнение цветом фона, 1 – однородное заполнение цветом, 2 – заполнение ------, 3 – заполнение //////, 4 – заполнение ///// тонкими линиями, 5 – заполнение \\\\\ тонкими линиями, 6 – заполнение //////, 7 – заполнение клеткой, 8 – заполнение косой клеткой, 9 – заполнение частой клеткой, 10 – заполнение в крупный горошек, 11 – заполнение в мелкий горошек, 12 – заполнение определяемое пользователем;

Ellipse(x,y,н.уг.,к.уг., rx,ry) - процедура рисует дугу эллипса с центром в заданной точке, где x и y – координаты центра эллипса, н.уг. – начало дуги в градусах, к.уг. – конец дуги в градусах, rx – радиус по OX, ry - радиус по OY;

Circle(x,y,r) - рисует окружность с центром в точке (x,y) и радиусом r.

TextOut (x, y, text) – Выводит Text на экран. Начало текста в точке с координатами (x, y).

FloodFill(x,y,color) – Заливает область одного цвета - цветом color, начиная с точки (x,y).

Оператор FOR

Формат: FOR [параметр_цикла] := [н_з_п_ц] To [к_з_п_ц] Do [оператор];

FOR, To, Do – служебные слова. [параметр_цикла] – параметр цикла. [н_з_п_ц] – начальное значение параметра цикла. [к_з_п_ц] – конечное значение параметра цикла. [оператор] – произвольный оператор.

Параметр цикла должен быть переменой порядкового типа. Начальное и конечное значения параметра цикла должны быть того же типа, что и параметр цикла.

Работу оператора рассмотрим на его алгоритме:

На первом шаге значение параметра цикла принимает [н_з_п_ц], затем осуществляется проверка параметр цикла меньше или равен [к_з_п_ц]. Это условие является условием продолжения цикла. Если выполнено, то цикл продолжает свою работу и выполняется [оператор], после чего параметр цикла увеличивается (уменьшается) на единицу. Затем с новым значением параметр цикла, проверяется условие продолжения цикла. Если оно выполняется, то действия повторяются. Если условие не выполняется, то цикл прекращает свою работу.

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

  • телом оператора For. Оператор может не выполниться ни разу, поскольку проверка условия продолжения цикла выполняется до тела цикла;

  • шаг изменения параметра цикла постоянный и равен 1;

  • тело цикла в операторе For представлено одним оператором. В том случае, если действие тела цикла требует более одного простого оператора, то эти операторы необходимо превратить в один составной оператор посредством операторных скобок (BEGIN-END);

  • Параметр цикла может быть только переменой порядкового типа.

Оператор While работает следующим образом: вначале работы проверяется результат логического условия. Если результат истина, то выполняется оператор, после которого осуществляется возврат на проверку условия с новым значением параметров в логическом выражении условия. Если результат ложь, то осуществляется завершение цикла.

При работе с While надо обратить внимание на его свойства:

  • условия, использованные в While, являются условием продолжения цикла;

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

  • цикл While может, не выполнится ни разу, поскольку проверка условия в продолжение цикла выполняется до тела цикла.

5.Первичная проверка понимания и 6. Первичное закрепление.

Решим задачу.

Создать изображение паровозика (Приложение 1). Продумать как организовать его движение с помощью оператора цикла с предусловием while.

Этап 1. Постановка задачи (1 балл)

Что дано?

Изображение.

Что требуется?

Создать данное изображение с помощью операторов графики языка программирования Pasсal и организовать его движение.

Этап 2. Разработка математической модели (1 балл)

Этап 3. Разработка  алгоритма

Этап 4. Перевод алгоритма в программу (4 балла)



program z22; {заголовок программы}

uses Graph, crt; {подключение библиотек}

var a,b,I,j:integer; {описание переменных, которые используются в программе}

begin{начало программы}

a:=Detect; {автоматическое определение аппаратуры}

InitGraph(a,b,’C:\BP\BGI’); {переход в графический режим}

for j:=600 downto -500 do

begin

setfillstyle(1,yellow);

bar(310+j,220,390+j,260);{вагоны}

bar(400+j,220,480+j,260);{вагоны}

bar(220+j,220,300+j,260);{вагоны}

setcolor(6);

line(390+j,240,400+j,240);{соединение 2 и 3 вагонов}

line(310+j,240,300+j,240);{соединение 1 и 2 вагонов}

line(220+j,240,210+j,240);{соединение 1 вагона и паровоза}

setfillstyle(1,brown);

bar(130+j,200,210+j,260);{левая и задняя стенки паровоза и крыша}

bar(50+j,240,210+j,260);

line(82+j,228,87+j,243);{труба}

line(105+j,228,100+j,243);{труба}

ellipse(94+j,230,12,167,13,11);

setfillstyle(1,brown);

floodfill(94+j,227,brown);

setfillstyle(1,lightgray);

fillellipse(94+j,207,4,3);{дым}

fillellipse(115+j,175,8,5);{дым}

fillellipse(145+j,140,11,7);{дым}

line(30+j,270,50+j,240);{передняя часть паровоза}

line(30+j,270,45+j,270);{нижняя часть паровоза}

line(45+j,270,50+j,260);{часть паровоза перед колёсами}

line(50+j,240,50+j,260);{правая часть паровоза перед колёсами}

setfillstyle(1,brown);

floodfill(42+j,255,6);

setfillstyle(1,6);

i:=40;

while i

begin

i:=i+30;

circle(i+j,270,10);{колёса}

floodfill(i+j,270,6);

end;

i:=215;

while i

begin

i:=i+30;

circle(i+j,270,10);{колёса}

floodfill(i+j,270,6);

end;

i:=305;

while i

begin

i:=i+30;

circle(i+j,270,10);{колёса}

floodfill(i+j,270,6);

end;

i:=395;

while i

begin

i:=i+30;

circle(i+j,270,10);{}

floodfill(i+j,270,6);

end;

setfillstyle(1,3);

bar(320+j,230,340+j,240);

bar(360+j,230,380+j,240);

bar(410+j,230,430+j,240);

bar(450+j,230,470+j,240);

bar(230+j,230,250+j,240);

bar(270+j,230,290+j,240);

bar(150+j,210,190+j,230);{окна}

delay(50);

cleardevice;

end;

readkey;

end.





7.Рефлексия (подведение итогов учебного занятия).

Закрепление изученного материала - демонстрация выполненных работ обучающихся.

Цель нашего учебного занятия выполнили?

Самостоятельно оцените себя согласно набранным баллам.





Приложение 1












Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!