РОЗРОБКА ПРАКТИЧНИХ РОБІТ ДЛЯ ВИВЧЕННЯ МОВИ ПРОГРАМУВАННЯ „PASCAL” З ВИКОРИСТАННЯМ КОМП’ЮТЕРНОЇ ГРАФІКИ.

Про матеріал
Вивчення мови програмування PASCAL ми починаємо у 8 класі (1 година на тиждень). Не секрет, що це один з найскладніших розділів при вивченні курсу інформатики. Крім цього, якщо підходити стандартно до вивчення програмування, інтерес до нього у учнів доволі низький. Змінити цю ситуацію дозволяє використання графіки при вивченні мови програмування.
Перегляд файлу

РОЗРОБКА ПРАКТИЧНИХ РОБІТ ДЛЯ ВИВЧЕННЯ МОВИ ПРОГРАМУВАННЯ „PASCAL” З ВИКОРИСТАННЯМ КОМП’ЮТЕРНОЇ ГРАФІКИ.

Вивчення мови програмування PASCAL ми починаємо у 8 класі (1 година на тиждень). Не секрет, що це один з найскладніших розділів при вивченні курсу інформатики. Крім цього, якщо підходити стандартно до вивчення програмування, інтерес до нього у учнів доволі низький. Змінити цю ситуацію дозволяє використання графіки при вивченні мови програмування. Доречи, ця тема вже піднімалась у статті Євгена Мотурнак „Розробка уроків з теми: „Програмування комп’ютерної графіки. Візуальне моделювання”, №3 за 2006 рік.

Мною для восьмого класу розроблено одинадцять практичних робіт (використовується програмне середовище Borland Pascal 7.0). В практичній роботі №1 учні вперше знайомляться з середовищем програмування, тому графіка не використовується і текст першої роботи я не приводжу. Починаємо використання графіки вже при вивченні лінійних алгоритмів (практична робота №2). У цьому випадку учні швидше звикають до редактору мови програмування; отримують навики набору тексту програми, редагування, виправлення помилок, запуску програм... А найголовніше – вони наочно бачать результати своєї роботи, у учнів з’являється бажання намалювати свій малюнок.

Перед виконанням практичних робіт 2-4 розглядається використання графічних процедур та функцій для роботи з графічним режимом, установки кольору, стилю зображення, малювання геометричних фігур, виводу тексту, копіювання області екрану. Наведу приклади 2 та 3 робіт:

ПРАКТИЧНА РОБОТА №2

ТЕМА: ЛІНІЙНІ АЛГОРИТМИ. ГРАФІЧНІ ПРОЦЕДУРИ ТА ФУНКЦІЇ МОВИ PASCAL.

МЕТА:  ЗНАЙОМСТВО З ЛІНІЙНИМИ АЛГОРИТМАМИ, ГРАФІЧНИМИ ПРОЦЕДУРАМИ ТА ФУНКЦІЯМИ МОВИ PASCAL, ВМІННЯ НАБИРАТИ ТЕКСТ ПРОГРАМИ, ЗАПУСКАТИ ПРОГРАМУ НА ВИКОНАННЯ, РЕДАГУВАТИ ТЕКСТ ПРОГРАМИ.

ХІД РОБОТИ:

  1. Запустіть редактор мови PASCAL.

Задача. Намалювати букву N в графічному режимі (червона буква на синьому фоні).

Program ex2;

Uses Graph;

Var Gd, Gm : Integer;

       x1,x2,y1,y2 : Integer;

Begin

    Gd:=Detect;

    InitGraph(Gd, Gm, 'd:\BP\BGI'); {шлях до BGI драйверів}   

    x1:=40;x2:=60;

    y1:=30;y2:=70;

    SetColor(4); SetBkColor(1); CliarDevice;

    line(x1,y1,x1,y2);line(x1,y1,x2,y2);line(x2,y1,x2,y2);

    ReadLn;

    CloseGraph;

End.

  1. Розгляньте приклад роботи с графікою.
  2. Наберіть текст програми й запустіть її на виконання.
  3. Змініть текст програми так, щоб буква малювалась в центрі екрану, іншим кольором, на іншому фоні.
  4. Запишіть текст програми в конспект. Покажіть роботу програми та конспект викладачу.
  5. Вийдіть з PASCAL. Закрийте всі вікна. Закінчіть роботу.

ПРАКТИЧНА РОБОТА №3

ТЕМА: ГРАФІЧНІ ПРОЦЕДУРИ ТА ФУНКЦІЇ МОВИ PASCAL.

МЕТА:  ЗНАЙОМСТВО З ГРАФІЧНИМИ ПРОЦЕДУРАМИ ТА ФУНКЦІЯМИ МОВИ PASCAL, ВМІННЯ МАЛЮВАТИ ЗВИЧАЙНІ ФІГУРИ.

ХІД РОБОТИ:

  1. Запустіть редактор мови PASCAL.
  2. Розгляньте приклад роботи з графікою.

Задача. Намалювати звичайні фігури різними кольорами та різними стилями.

Program ex3;

Uses Graph;

Var Gd, Gm : Integer;

Begin

    Gd:=Detect;

    InitGraph(Gd, Gm, 'd:\BP\BGI');

    SetColor(4); SetBkColor(1); ClearDevice;   

{трикутник малюється за допомогою процедури Line}

    line(75,20,140,130);line(140,130,10,130);line(10,130,75,20);

{ трикутник малюється за допомогою процедури LineTo крапковим стилем}

    SetLineStyle(1,1,3);

    MoveTo(225,20);lineTo(290,130);lineTo(160,130);lineTo(225,20);

{коло}

    Circle(525,75,60);

{замальований еліпс}

    SetFillStyle(2,3);    FillEllipse(525,225,30,60);

{прямокутник}

    SetColor(14);    Rectangle(10,310,140,450);

{замальований прямокутник}

     SetFillStyle(1,7); Bar(160,310,200,450);

    ReadLn;

{замальовування трикутника}

    SetFillStyle(1,10);    FloodFill(75,55,4);

    Readln;

    CloseGraph;

End.

  1. Наберіть текст програми й запустіть її на виконання.
  2. Змініть текст програми так, щоб фігури малювалися в іншому місці, іншим кольором, іншим стилем.
  3. Запишіть текст програми в конспект. Покажіть роботу програми та конспект викладачу.
  4. Вийдіть з PASCAL. Закрийте всі вікна. Закінчіть роботу.

В практичній роботі №4 більше уваги приділяється виводу тексту на екран та копіюванню області екрану. По закінченню цих робіт разом з учнями виділяємо шаблон для роботи з графікою:

Program ex;

Uses Graph;

Var Gd, Gm : Integer;

Begin

    Gd:=Detect;

    InitGraph(Gd, Gm, 'd:\BP\BGI');

        {Графічні оператори}

    ReadLn;

    CloseGraph;

End.

Для контролю набутих знань та умінь проводиться самостійна практична робота №5, в якій учням пропонується за готовим малюнком (наприклад: дім, дерево, сонце) самостійно написати програму його малювання.

В роботах 6-11 розглядаються різні конструкції мови програмування та їх використання при побудові зображень. Наведу тексти деяких з цих робіт:

ПРАКТИЧНА РОБОТА №6

ТЕМА: УМОВНИЙ ОПЕРАТОР. ВКАЗІВКИ РОЗГАЛУЖЕННЯ.

МЕТА:  НАВЧИТИСЯ СКЛАДАТИ АЛГОРИТМИ З РОЗГАЛУЖЕННЯМ.

ХІД РОБОТИ:

  1. Розгляньте приклади двох програм. Обидві програми малюють трикутник, якщо ввести з клавіатури число 1, або квадрат, якщо ввести число 2. 

Program ex1;

Uses Graph;

Var Gd, Gm, n : Integer;

Begin

 Gd:=Detect;

 InitGraph(Gd, Gm, 'd:\BP\BGI');

 SetBkColor(1); ClearDevice; SetColor(4);

 writeln('TREUGOLNIK--1');

 writeln('KVADRAT--2');

 write('vvedite chislo '); readln(n);

 if n=1 then begin

                        line(200,10,350,210); line(350,210,50,210); line(50,210,200,10)

                    end

            else rectangle(150,10,450,310);

 readln;

End.

Program ex2;

Uses Graph;

Var Gd, Gm, n : Integer;

Begin

 Gd:=Detect;

 InitGraph(Gd, Gm, 'd:\BP\BGI');

 SetBkColor(1);ClearDevice;SetColor(4);

 writeln('TREUGOLNIK--1');

 writeln('KVADRAT--2');

 write('vvedite chislo '); readln(n);

 if n=1 then begin

                        line(200,10,350,210); line(350,210,50,210); line(50,210,200,10)

                    end;

 if n=2 then rectangle(150,10,450,310);

 readln;

End.

  1. Виясніть в якій з програм квадрат малюється при вводі будь якого числа крім 1.
  2. Напишіть програму малювання замальованого червоним кольором еліпса, якщо ввести з клавіатури число 1, замальованого синім кольором прямокутника, якщо ввести число 2, або замальованого сірим кольором сектора круга, якщо ввести число 3.
  3. Запишіть текст програми в конспект. Покажіть роботу програми та конспект викладачу.
  4. Вийдіть з PASCAL. Закрийте всі вікна. Закінчіть роботу.

ПРАКТИЧНА РОБОТА №7

ТЕМА: ВКАЗІВКИ ПОВТОРЕННЯ. ЦИКЛ З ПАРАМЕТРОМ.

МЕТА: НАВЧИТИСЯ СКЛАДАТИ АЛГОРИТМИ ЦИКЛІЧНОЇ СТРУКТУРИ.

ХІД РОБОТИ:

  1. Розгляньте приклади малювання з використанням циклів.

1. Елемент що повторюється – частина забору:

                   

Program ex1;

Uses Graph;

Var Gd, Gm,i : Integer;

Begin

 Gd:=Detect;

 InitGraph(Gd, Gm, 'd:\BP\BGI');

 SetBkColor(1);ClearDevice;SetColor(4);

 for i:=1 to 14 do

   begin

      line(i*40,470,i*40,370);   line(i*40,370,i*40+20,330);  

      line(i*40+20,330,i*40+40,370);

   end;

 line(600,370,600,470);

 SetTextStyle(4,0,6); OutTextXY(200,70,'Ivanov Ivan');

 readln;

End.

2. Елемент що повторюється – замальований сектор:

                              

Program ex1;

Uses Graph;

Var Gd, Gm,i : Integer;

Begin

 Gd:=Detect;

 InitGraph(Gd, Gm, 'd:\BP\BGI');

 SetBkColor(1);ClearDevice;SetColor(4);

 for i:=1 to 18 do

     pieslice(300,220,i*20,i*20+5,150);
      SetTextStyle(4,0,6); OutTextXY(160,400,'Ivanov Ivan');

 readln;

End.

  1. Напишіть програму малювання малюнка (елемент що повторюється ):
     
  2. Запишіть текст програми в конспект. Покажіть роботу програми та конспект викладачу.
  3. Вийдіть з PASCAL. Закрийте всі вікна. Закінчіть роботу.

В практичних роботах 8 і 9 розглядаються відповідно цикли з передумовою та з постумовою. В роботі №10 розглядаються принципи створення мультиплікації на екрані та пропонується (за зразком) написати програму де весляр пливе у човні.

ПРАКТИЧНА РОБОТА №11

ТЕМА: ВКАЗІВКИ ПОВТОРЕННЯ ТА РОЗГАЛУЖЕННЯ.

МЕТА: НАВЧИТИСЬ СКЛАДАТИ АЛГОРИТМИ ДЛЯ СТВОРЕННЯ МУЛЬТИПЛІКАЦІЇ НА ЕКРАНІ З УПРАВЛІННЯМ ПЕРЕМІЩЕННЯ ОБРАЗУ.

ХІД РОБОТИ:

  1. Розгляньте приклад мультиплікації на екрані з управлінням переміщення образу за допомогою клавіш управління курсором.

Uses crt,Graph;

Var Gd, Gm,x,y,xmax,ymax,xold,yold : Integer;

     P1 : Pointer; c:char; Size : Word;

Begin

 Gd:=Detect;

 InitGraph(Gd, Gm, 'd:\BP\BGI');

 Size := ImageSize(0,0, 20,100); SetLineStyle(0,0,3);

 PieSlice(10,10,0,360,10);FillEllipse(10,40,10,20);line(8,60,0,100);line(12,60,20,100);

 GetMem(P1, Size); GetImage(0,0, 20, 100, P1^);

 xmax:=GetMaxX-20; ymax:=GetMaxY-100; x:=0; y:=0;

 PutImage(x,y, P1^,1);

 repeat

   PutImage(x,y, P1^,1);                     {виводимо зображення}

   xold:=x;yold:=y;                             {запам’ятовуємо старі координати}

   c:=readkey;                                     {зчитуємо значення натиснутої клавіші}

   case c of                                          {аналізуємо код клавіші}

      #72: if y>1 then y:=y-1;               {зміщення вверх}

      #77: if x<xmax then x:=x+1;       {вправо}

      #80: if y<ymax then y:=y+1;       {вниз}

      #75: if x>1 then x:=x-1;               {вліво}

   end;

   PutImage(xold,yold, P1^,1)            {стираємо зображення}

 until c=#27;                                       {до натискання Esc}

 FreeMem(p1,size);

 CloseGraph;

End.

  1. Напишіть програму простішого графічного редактору.
    Передбачити щоб переміщення точки по екрану виконувалось за допомогою клавіш управління, а також щоб після натискання клавіші «Y» точка залишала за собою слід, а після натискання клавіші «N» не залишала.
  2. Запишіть текст програми в конспект. Покажіть роботу програми та конспект викладачу.
  3. Вийдіть з PASCAL. Закрийте всі вікна. Закінчіть роботу.

Таким чином к завершенню 8 класу учні отримують навик роботи у середовищі програмування, знають основні графічні процедури та функції, вміють користуватися вказівками повторення та розгалуження. Це є хорошою основою для подальшого вивчення мови програмування.

doc
Додав(-ла)
Grachov Stanislav Viktorovich
Пов’язані теми
Інформатика, Інші матеріали
Додано
21 жовтня 2019
Переглядів
1795
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку