1. Міністерство освіти і науки України
обласний інститут післядипломної педагогічної освіти
“Основи алгоритмізації
та програмування”
2. Є лише один спосібЄ лише один спосіб
заставити людину щосьзаставити людину щось
зробити – це зробити так,зробити – це зробити так,
щоб вона захотіла цещоб вона захотіла це
зробити.зробити.
Карнегі ДейлКарнегі Дейл
3. ПЛАН
ВСТУП
Система уроків з теми “Основи алгоритмізації та
програмування”
Алгоритм та його властивості (“Броунівський рух”)
Структура програми на мові програмування
Паскаль. Оператор присвоєння. Процедури
введення та виведення даних (“Ажурна
пилка”)
ВИСНОВКИ
ВИКОРИСТАНІ ДЖЕРЕЛА
4. ВСТУП
Існує досить велика кількість різновидів
інтерактивних вправ. На уроках інформатики
найбільш придатними до застосування
інтерактивними вправами можуть бути: «Ажурна
пилка», «Мозковий штурм», «Посиденьки»,
«Броунівський рух», «Рольова гра», «Робота в
малих групах».
Я пропоную цикл уроків з програмування,
розроблених за інтерактивною технологією
навчання та з власного досвіду стверджую, що
застосування інтерактивних технологій навчання
підвищує ефективність уроку та зацікавлює учнів
до вивчення розділу «Основи алгоритмізації та
програмування».
5. І. Мотивація навчальної діяльності учнів
Пропоную учням сформулювати критерії, за якими можна визначити, чи є людина
певної професії висококваліфікованим спеціалістом, наприклад, до якого лікаряхірурга
учні звернулися б за допомогою. Підводжу учнів до думки, що висококласний фахівець
– це людина, котра досконало володіє алгоритмом (порядком, переліком) дій для
розв'язання різних виробничих питань. Отже, вміння правильно будувати алгоритм
своїх дій, враховувати в ньому всі умови та планувати шляхи вирішення різних ситуацій
– ось що відрізняє фахівця свої справи від дилетанта. Саме тому в розділ шкільного
курсу інформатики введено тему "Основи алгоритмізації та програмування", метою
якої є розвиток в учнів алгоритмічного стилю мислення, тобто вироблення вміння
створювати різноманітні алгоритми. Таким чином, цей розділ інформатики допоможе
учням стати у майбутньому – гарними спеціалістами улюбленої справи. Оскільки
одним з основних виконавців алгоритмів є комп'ютер, то учні будуть вчитися
створювати алгоритми для цієї обчислювальної машини.
II. Оголошення, представлення теми та очікуваних навчальних результатів
Після цього уроку учні зможуть:
пояснювати поняття "алгоритм";
пояснювати, які властивості повинні мати алгоритми;
записувати алгоритми у різних формах подання;
набути навичок роботи в групі.
III. Надання необхідної інформації
6. IV. Інтерактивні вправи
Вправа "Броунівський рух" та робота в малих групах.
Для проведення вправи "Броунівський рух" учні отримують картки: 7 учнів отримують
жовті картки з текстом (продовження теоретичного матеріалу теми), інші 7 учнів
отримують блакитні картки з таким самим текстом. Пропоную учням прочитати
інформацію, написану на картці. Запитую, чи розуміють учні прочитане. Пропоную учням з
жовтими картками ходити по класу і знайомити зі своєю інформацією учнів з блакитними
картками і, навпаки, учні з блакитними картками знайомлять зі своєю інформацією учнів з
жовтими картками. Учень може одночасно говорити тільки з однією особою.
Зміст карток
1. Однозначність алгоритму – це точний опис дій та послідовності їх
виконання, відсутність їх неоднозначного тлумачення.
Таких властивостей часто не мають вказівки, що їх дають люди один
одному. Наприклад, у мультфільмі "Вовк у тридев'ятому царстві" хлопчик дає
наказ двом молодцям зі скриньки: "Нарубати і замісити!" І перший молодець
почав рубати тісто, а другий місити дрова.
7. 2. Зрозумілість алгоритму означає, що виконавець правильно сприйме
кожну команду і зможе її виконати. Алгоритм відповідає властивості
зрозумілість, якщо команди, з яких складається алгоритм, належать системі
команд виконавця.
Наприклад, алгоритм, розроблений для автоматичної пральної машини, не
буде зрозумілим для металообробного верстата з числовим програмним
управлінням.
3. Будьякий алгоритм має бути розбитий на послідовність окремих кроків,
мати властивість дискретності.
Алгоритм має властивості дискретності, якщо всі його команди чітко
відокремлені одна від одної. Кожна команда починає виконуватися після
закінчення виконання попередньої.
Наприклад, на автомобільних заводах весь технологічний процес розбито на
послідовність простих операцій (дискретів), виконання яких доручається
машинам. Для машини алгоритм має бути записаний у вигляді послідовності
найпростіших команд, які вона зможе послідовно виконувати.
4. Універсальність (масовість) алгоритму – це можливість використовувати
його для розв'язування подібних задач. Алгоритм є масовий, якщо він
придатний для розв'язування не однієї задачі, а задач певного класу. Наприклад,
якщо в алгоритмі розв'язування квадратного рівняння передбачені дії, що їх треба
виконати для різного за знаком значення дискримінанту, то такий алгоритм буде
масовим, тобто може бути застосований для різних значень коефіцієнтів
квадратного рівняння а, b, с.
8. 5.Алгоритм має бути правильним і результативним. Алгоритм ре
зультативний, якщо він дає результати, які можуть бути і неправильними.
Алгоритм результативний, якщо його виконання дає правильні результати
розв'язування задачі, тобто забезпечує досягнення мети. Якщо алгоритм
розв'язування квадратного рівняння правильно обчислює корені квадратного
рівняння або правильно робить висновок, що коренів немає, то такий алгоритм
правильний.
6. Алгоритм містить помилки, якщо при виконанні він не завершиться взагалі
або отримані результати виявляться неправильними. Помилки в алгоритмах
поділяють на синтаксичні та логічні. Синтаксичні помилки – це порушення
правил запису алгоритму: пропущені дужки, коми, помилки у написанні команд
тощо. Відсутність синтаксичних помилок не гарантує правильної роботи
алгоритму. Логічні помилки - це порушення в логіці алгоритму: помилки у виборі
формул, неправильно вказані умови в розгалуженнях тощо. Деякі логічні
помилки, наприклад, спробу ділення на нуль або обчислення квадратного кореня з
від'ємного числа комп'ютер може знайти, проте далеко не всі. Знаходити і
виправляти логічні помилки завдання людини.
7. Властивість формальності алгоритму. Алгоритм формальний, якщо його
можуть виконати не один, а декілька виконавців з однаковими результатами. Ця
властивість означає, що коли алгоритм А застосовується до двох однакових
наборів даних, то й результати мають бути однаковими. І ще ця властивість
означає, що виконавець відпрацьовує команди алгоритму формально, тобто
9. Пам'ятка 4. Навчаючи - учусь ("Броунівський рух")
Такий вид навчальної діяльності надає вам можливість взяти активну
участь у навчанні та передачі своїх знань іншим людям, у цьому випадку
своїм однокласникам під час уроку. Ваша робота буде організована таким
чином:
Після того як учитель назвав тему та мету уроку і роздав вам картки із
завданнями вам потрібно ознайомитися з інформацією, що міститься на
вашій картці.
Якщо вам щось незрозуміле, запитайте про це та перевірте у вчителя,
чи правильно ви розумієте інформацію.
Вам необхідно ознайомити зі своєю інформацією інших
однокласників, підготуйтеся до передавання інформації іншим у доступній
формі.
Ви маєте право говорити лише з однією особою. Ваше завдання поля
гає в тому, щоб поділитися своєю інформацією з іншими учнями та самому
дізнатися про певну інформацію від них.
Уважно слухайте інформацію інших, намагайтесь отримати і запам'я
тати якомога більше інформації, за необхідності зробіть короткі нотатки.
Коли всі поділилися та отримали інформацію, розкажіть у класі, про
що ви дізналися від інших.
10. Для закріплення теоретичного матеріалу, з яким учні ознайомилися щойно,
пропоную учням об'єднатися в малі групи по 4 чол., обрати спікера, секретаря,
посередника, доповідача. Групи отримують картки з однаковими завданнями:
Зміст картки
Дано алгоритм знаходження гіпотенузи та площі прямокутного трикутника,
поданий у вигляді блоксхеми.
Записати цей алгоритм, поданий у графічній формі, у словесноформульному
вигляді.
Перевірити, чи відповідає поданий алгоритм усім властивостям алгоритмів.
Вказати, як треба змінити алгоритм, щоб він не відповідав властивості
"масовість", "результативність", "зрозумілість", "правильність", "однозначність".
Після роботи над картками збираю результати за методом "Коло ідей".
11. V. Підбиття підсумків, оцінювання результатів уроку
1.Пропоную учням відповісти на питання:
2.Що таке алгоритм?
3.Які властивості алгоритму ви можете назвати?
4.Хто чи що може бути виконавцем алгоритму?
5.Чому до алгоритмів висувають певні вимоги?
6.Чи досягли мету, яку поставили перед собою на початку
уроку?
7.Які емоції ви переживали під час інтерактивних вправ?
8.Які у вас виникали труднощі під час уроку?
9.Що найбільше запам'яталося на сьогоднішньому уроці?
VI. Повідомлення домашнього завдання
Опрацювати матеріал (конспект). Словесне описати
алгоритм, що є розв'язком такої задачі: У нас є два пісочних
годинники на 3 хвилини і на 8 хвилин. Як за допомогою цих
двох годинників відміряти час 7 хвилин?
12. I. Мотивація навчальної діяльності учнів
Пропоную учням пригадати, що таке програма. Звертаю увагу учнів, що
зазвичай комп’ютерна програма виконує обробку якихось даних, які під час
виконання програми зберігаються в оперативній пам'яті. Пропоную учням
відповісти на питання: як ви гадаєте, яким чином можна занести дані в пам'ять
комп'ютера? Підводжу учнів до думки, що мають існувати спеціальні засоби
(команди), які дозволяють занести дані в пам’ять комп’ютера.
II. Оголошення, представлення теми та очікуваних навчаль-них
результатів
Після цього уроку учні зможуть:
пояснювати призначення основних розділів програми на мові Паскаль;
пояснювати формат запису та суть роботи процедур введення та виведення
даних;
пояснювати призначення та суть оператора присвоєння;
набути навичок роботи у групі.
III. Надання необхідної інформації
13. IV. Інтерактивні вправи
1) Інструктування: розповідаю учням про мету вправи за
методом "Ажурна пилка", правила, послідовність дій і
кількість часу на виконання завдання.
2) Учні отримують картку одного з кольорів (синього,
червоного, жовтого або білого) з номером на ній (від 1 до 4).
Сформувалося чотири "домашніх" (кольорові) групи по 4 чол.
у кожній. Учням пропонується об'єднатися в групи відповідно
до кольору картки, яку вони отримали ("домашні" групи). У
"домашніх" групах учні знайомляться зі змістом карток,
обмінюються думками, користуючись текстом на картках,
роблять в зошитах конспекти теоретичного матеріалу.
Завдання для груп: ознайомитися з наведеними теоретичним
відомостями, звернути увагу на зауваження, розібрати
наведені приклади.
14. Зміст карток
Сині
Процедури введення даних – read, readln
Надавати значення змінним можна двома способами: за допомогою оператора присвоєння,
наприклад х:=5, або процедури введення даних з клавіатури. Другий спосіб робить
програму більш універсальною, оскільки дає змогу розв'язувати задачі для різних значень
змінних.
Процедура read має вигляд
read (<змінна 1> , ..., <змінна n>);
Дія процедури. Виконання програми зупиняється. Система переходить у режим очікування
введення даних (екран темний, миготить курсор). Значення цих даних користувач набирає
на клавіатурі через пропуск або натискає після кожного даного на клавішу Еnter. У
результаті виконання цієї процедури відповідним змінним будуть присвоєні конкретні
значення.
Процедура readln має вигляд
readln (<змінна 1>, ..., <змінна n>);
Вона діє як процедура read з тією відмінністю, що зайві дані у рядку введення ігноруються.
Наступна команда вводу читатиме дані з нового рядка. Цю команду застосовують під час
роботи з текстовими файлами.
Зауваження. Процедуру readln, яку записують перед кінцем програми, використовують
для того, щоб оглянути результати виконання програми на екрані. Щоб після цього
перейти у режим редагування програми, потрібно натиснути на клавішу вводу.
Зауваження. Значення змінних логічного й перерахованого типу вводити з клавіатури не
можна.
Приклад. Якщо в програмі зустрічається процедура readln (a,b,c); виконання програми
припиняється і комп'ютер чекає введення з клавіатури трьох величин (дані вводяться або
через проміжок, або через клавішу Епter). Після останнього даного треба натиснути Еnter і
вказані в процедурі змінні а, b та с відповідно набудуть значень введених величин.
15. Червоні
Процедури виведення даних – write, writeln
Для виведення на екран повідомлень та результатів обчислень використовують команди write та
writeln:
writeln (<вираз 1>, < вираз 2>, ..., <вираз n>) ;
У списку виведення можуть бути сталі, змінні або вирази.
Дія команди. Сталі, значення змінних та виразів виводяться на екран у вікно виведення, яке можна
переглянути за допомогою комбінації клавіш Аlt+F5.
Процедура
writeln (<вираз 1>, ..., <вираз n>);
діє майже так само, як і процедура write; відмінність така: наступна після неї команда write чи writeln
буде виводити значення на екран у новому рядку.
Для переходу на новий рядок екрана чи для пропуску рядка використовують процедуру writeln без
параметрів.
Форматний вивід. Процедури write та writeln можуть здійснювати форматний вивід даних.
Форматування – це подання результатів у наперед заданому користувачем вигляді. Для цього після
виразу (або після імені змінної) через двокрапку записують число (:п) – кількість позицій на екрані,
які треба надати для виведення значення цього виразу. Формат .n застосовують для даних цілого та
рядкового типів. Під час виведення даного дійсного типу зазначають загальну кількість позицій для
всіх символів (п) та кількість позицій для дробової частини (т), тобто формат має вигляд :п:т.
Приклад. Результатом послідовного виконання процедур
write (‘а=’, а+b);
{переходу на наступний рядок не відбувається}
writeln (‘с=’, с:4:1);
{після виведення тексту ‘с=’ та значення змінної с відбувається перехід на наступний рядок}
writeln (‘Виконав Юрченко Юрко’);
за умови, що змінні мають значення а=5, b=3, с=8.21, буде такий текст, виведений на екран монітора:
а=8 с=8.2
Виконав Юрченко Юрко
16. Жовті
Розділ uses складається із зарезервованого слова Uses і списку імен
стандартних бібліотечних модулів та бібліотечних модулів користувача.
Формат опису:
Uses <ім' я 1>, <ім' я 2>,...;
Бібліотечні модулі створюються заздалегідь і містять часто використовувані
програми. Вони можуть бути створені самим користувачем або кимсь іншим. У
шкільному курсі ми використовуємо деякі зі стандартних модулів, що створені
розробниками мови Паскаль: Crt і Graph:
Crt — містить засоби керування монітором у текстовому режимі, клавіатурою
ПЕОМ, а також звукові ефекти;
Graph — містить пакет графічних засобів, що забезпечують ефективну роботу
з екраном монітора у графічному режимі.
Як уже зазначалося, у розділі опису констант робиться присвоювання
постійних значень ідентифікаторам констант. Розділ починається зарезервованим
словом Const, за яким записується ряд виразів, що надають ідентифікаторам постійні
числові або рядкові значення. Вирази присвоювання відокремлюються один від
одного крапкою з комою.
Формат опису:
Соnst <ідентифікатор> = <значення>;
Приклад:
Const А=10.25; Мах=1000;
V =‘Hello’;
17. Білі
Кожна змінна, що зустрічається у програмі, повинна бути описана.
Опис обов'язково передує використанню змінної.
Формат опису:
Var
<ідентифікатор,... > : < тип >;
Приклад:
Vаr
А, 5: real; n: integer;
У розділі опису процедур і функцій розміщуються тіла підпрограм (допоміжних програм).
Більш докладніше робота з підпрограмами буде розглянута пізніше. У програмі на мові Паскаль
розділ операторів є основним. Він починається зарезервованим словом Веgin (початок), далі
розміщуються оператори мови, відділені один від одного крапкою з комою. Завершує розділ
зарезервоване слово Еnd (кінець) і крапка:
Веgin
<серія операторів>;
Еnd.
У будьякому місці програми можуть вживатися коментарі. Це текст, за допомогою якого
програміст занотовує деякі пояснення для користувачів програми. Текст коментарю
обмежується символами { } або (* *) і може містити комбінації латинських і російських літер,
цифр і інших символів. В обмежувачах (* *) проміжки між дужкою і зірочкою заборонені і, крім
того, у тексті не повинні знаходитися знаки обмежувачів, з яких коментар починається.
Обмежень на довжину коментарю немає.
Приклад:
. . .
d:=b*b4*а*с; (обчислення дискримінанта).
. . .
18. Пам'ятка 7. Ажурна пилка
Такий вид діяльності на уроці дає можливість вам працювати разом, щоб вивчити значну
кількість інформації за короткий проміжок часу, а також заохочує вас допомагати один одному
вчитися навчаючись.
Під час роботи за допомогою методу „Ажурна пилка" маєте бути готовими працювати в
різних групах.
Спочатку ви працюєте в "домашній" групі.
Потім в іншій групі ви будете виступати в ролі "експертів" з питання, над яким працювали в
"домашній групі", та отримувати інформацію від представників інших груп.
В останній частині заняття ви знову повернетеся у свою "домашню" групу для того, щоб
поділитися тією новою інформацією, що її вам надали учасники інших груп.
"Домашні" групи:
1. Кожна група отримує завдання, вивчає його та обговорює свій матеріал.
2. Вам потрібно обрати в групі голову, таймкіпера (той, хто стежить за часом) та особу,
котра ставить запитання, або переконатися, що кожний (кожна) розуміє зміст матеріалу.
"Експертні" групи:
1. Після того як учитель об'єднав вас у нові групи, ви стаєте "експертами" з тієї теми, що
вивчалась у вашій "домашній" групі.
2. Почергово кожний або кожна мають за визначений учителем час якісно і в повному обсязі
донести інформацію до членів інших груп та сприйняти нову інформацію від представників інших
груп.
"Домашні" групи:
1. Ви повертаєтеся "додому", де маєте поділитися інформацією з членами своєї "домашньої"
групи про нову інформацію, що її ви отримали від представників інших груп.
2. Група виробляє спільні висновки та рішення.
Таким чином, за допомогою методу "Ажурна пилка" за короткий проміжок часу можна
отримати велику кількість інформації.
19. 3) Пропоную учням об'єднатися в групи відповідно до своїх номерів
("експертні" групи). У кожну експертну групу потрапляють
представники з кожної "домашньої групи". Учні з різних "домашніх"
груп, користуючись зробленим конспектом, повідомляють
однокласникам свою порцію інформації. Учням пропонується такий
порядок повідомлень в "експертних" групах:
•Жовті – про призначення та формат розділів програми uses та const;
•Білі – про призначення та формат розділів програми vаr та begin ....
end.;
•Сині – про процедури введення даних;
•Червоні – про процедури виведення даних.
4) Пропоную учням об'єднатися в "домашні" групи, учасники яких
обмінюються між собою інформацією, отриманою в "експертних"
групах.
5) Пропоную учням написати програму реалізації такого алгоритму:
Дано катети прямокутного трикутника. Обчислити гіпотенузу та
площу цього трикутника.
Алгоритм до цієї задачі, що поданий у вигляді блоксхеми,
розглядався учнями на попередніх уроках. Учні разом зі мною
записують цей алгоритм мовою програмування.
20. Пам'ятка 2. Коло ідей
Метою технології є залучення всіх до обговорення
проблеми.
Порядок проведення:
•вчитель ставить питання та пропонує обговорити його в
малих групах;
•після того як вичерпався час на обговорення, кожна
група представляє лише один аспект проблеми, яку ви
обговорювали;
•групи висловлюються по черзі, поки не буде вичерпано
всі відповіді:
•під час обговорення теми на дошці складається список
зазначених ідей:
•коли всі ідеї з вирішення проблеми висловлені, можна
звернутися до розгляду проблеми в цілому і підбити
підсумки роботи.
21. IV. Практична робота
Учні завантажують середовище програмування Турбо Паскаль та ви
конують на комп’ютері зазначену програму. Пропоную учням
внести в програму коментар, включити в неї різні варіанти
процедур введеннявиведення даних.
V. Підбиття підсумків, оцінювання результатів уроку
Пропоную учням відповісти на питання.
Запитання для бесіди:
1. Яким чином можна надати значення змінній?
2. Чи важливий порядок перерахування змінних у процедурі вве
дення даних з клавіатури – readln?
3. Чим відрізняється робота процедури writeln від роботи процедури
write?
4. Які труднощі виникали у вас під час групової роботи? Як ви
вважаєте, чи досягай ми мети, поставленої на початку уроку?
Пропоную учням виконати комп'ютерний тест.
VI. Повідомлення домашнього завдання
Опрацювати матеріал (конспект)
22. ВИСНОВКИ
Підводячи підсумки, можна зробити висновок що,
використовуючи на заняттях різні технології навчання, можна
досягти більш реальних результатів у навчанні та вихованні
сучасного спеціаліста будьякого фаху, зокрема оператора
комп‘ютерного набору. Практика показує, що при
використанні інтерактивних методів навчання, учні
запам‘ятовують:
1)80% того, що висловлювали самі;
2)90% того, що робили самі.
Поліпшується не тільки запам‘ятовування матеріалу, але і
його ідентифікація, використання у повсякденному житті.
Використання інтерактивних методів навчання сприяє
розвитку таких особистісних якостей як комунікабельність,
співробітництво, уміння відстоювати свою точку зору, йти на
компроміси і т.д.
23. ВИКОРИСТАНІ ДЖЕРЕЛА
1. Баханов К. Інноваційні системи, технології та моделі
навчання історії в школі: Монографія. Запоріжжя:
Просвіта, 2000. 160 с.
2. Глинський Я. Інформатика: 811 класи: Навчальний
посібник для загальноосвітніх навчальних закладів: У 2х
кн. Алгоритмізація і програмування. 3тє вид. Львів:
Деол, СПД Глинський, 2003. Кн. 1.200с.
3. Пометун О., Пироженко Л. Інтерактивні технології
навчання: теорія, практика, досвід. Київ, 2002. 135 с.
4. Сайт: Конспекти уроків „Вивчаємо Паскаль"
http://distanse.edu.vn.ua/metodic/pascal.
5. Сучасний урок. Інтерактивні технології навчання: Наук.
метод, посібник/ О. І. Пометун, Л. В. Пироженко; За ред.
О. І. Пометун. Київ: А. С. К, 2004. 192с.: іл.