Особливості чотирирівневого підходу підготовки учнів до участі в олімпіадах з інформатики

Вивчення вимог, якими користувались, при підбірці задач по темах та рівнів. Розгляд необхідності врахування дидактичних та методичних вимог, що визначають педагогічну доцільність їх використання. Аналіз підготовки учнів до олімпіад з інформатики.

Рубрика Педагогика
Вид статья
Язык украинский
Дата добавления 15.02.2023
Размер файла 19,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Особливості чотирирівневого підходу підготовки учнів до участі в олімпіадах з інформатики

С.Д. Вапнічний

У статті запропоновано елементи методичної системи підготовки учнів до олімпіад з інформатики, яка охоплює чотири рівні. Виокремлено такі рівні, як базовий, середній, високий та продвинутий. Для кожного з рівнів наведено перелік тем та запропоновано контрольні задачі для деяких тем, за якими можна визначити підготовленість учня. Також для кожного рівня запропоновано набори задач на двох відомих ресурсах - eolymp.com та codeforces.com. Для підвищення ефективності запропонованого у роботі підходу рекомендується учням, починаючи з середнього рівня, брати участь в різного роду змаганнях та олімпіадах, які дають багато мотивуючих поштовхів до опанування програмування. Високий та продвинутий рівні включають в себе і власні авторські теми та задачі.

У статті наведено вимоги, якими користувались, при підбірці задач по темах та виділенню рівнів. Зокрема, виділено такі, як наявність цікавої фабули та виникнення інтересу в учнів, ілюстративність, зв'язність та різноманітність. При побудові систем завдань враховуються дидактичні та методичні вимоги, що визначають педагогічну доцільність їх використання. Описано модель процесу створення системи завдань, яка складається з аналітичного, проєктувального та технологічного етапів.

Запропонований підхід успішно використовувалась при навчанні учнів Ужгородської загальноосвітньої спеціалізованої школи-інтернату з поглибленим вивченням окремих предметів (УЗСШІзПВОП), на літніх та зимових учнівських школах з програмування в Кременчуці та на літніх учнівських школах з програмування в Хусті. Багато учнів УЗСШІзПВОП навчались за запропонованим підходом, брали участь в олімпіадах і ставали призерами різних етапів Всеукраїнської учнівської олімпіади з інформатики. Також вказаний підхід пройшов успішне апробування в умовах дистанційного навчання.

Ключові слова: інформатика, елементи методичної системи, олімпіада, школи з програмування.

Вступ

Постановка проблеми. Світова ІТ- галузь стрімко зростає і потребує все більшої і більшої кількості працівників. Для цих працівників не потрібно, як в часи індустріалізації, будувати великі заводи, а достатньо звичайного офісного приміщення та комп'ютерної техніки. Але підготовка такого фахівця є суттєво складнішою, ніж працівника в промисловості, ця підготовка повинна починатися ще в школі. Виробленню мотивації займатися програмуванням на початкових етапах гарно сприяють різні конкурси, турніри та олімпіади.

Аналіз останніх досліджень і публікацій. Існує ряд публікацій, які стосуються цієї тематики. В [1] виділено та наведено теоретичні відомості про три основні функції навчання програмування: загальноосвітню, розвивальну та виховну. Вказано, що загальноосвітня функція навчання програмування в школах полягає у формуванні в школярів знань про фундаментальні концепції і парадигми програмування та формуванні у школярів умінь та навиків програмування. Розвивальна функція полягає в розвитку у школярів алгоритмічного стилю мислення, інтелектуальних якостей та творчих здібностей, формуванню у школярів здатності бачити задачу на різних рівнях деталізації, вміння застосовувати програмування для вирішення практичних задач. Виховна функція полягає у формуванні в школярів таких якостей як педантичність, дисциплінованість, акуратність, внутрішня керованість, наполегливість, усвідомленість особистої відповідальності за результати своєї праці, прагнення до самоствердження через творчу діяльність, уміння працювати як особисто, так і в колективі, системність у навчальній діяльності.

У роботі [2] виділено три компонента підготовки учнів до олімпіад з інформатики: діагностико-мотиваційний, змістовно-теоретичний та процесуально-діяльнісний (змагально-тренувальний). Вказано, що діагностико-мотиваційний спрямований на виявлення учнів, здібних до програмування та розв'язування нестандартних задач, мотивацію учнів до поглибленого вивчення даного розділу інформатики. Змістовно-теоретичний складається з 2 підкомпонентів: вивчення конкретної мови програмування та розв'язання логічних, нестандартних задач з використанням нескладних методів програмування (пошук у масиві, використання математичних формул тощо); вивчення базових олімпіадних алгоритмів та застосування їх при розв'язуванні задач. Процесуально-діяльнісний (змагально- тренувальний) спрямований на закріплення теоретичного матеріалу, застосування його до розв'язання олімпіадних задач різного рівня складності, участь у олімпіадах, конкурсах, турнірах, написання прикладних програм. На базі вказаних компонентів запропоновано авторський підхід підготовки до олімпіад.

У роботі [3] вказано основні етапи підготовки учнів до участі у змаганнях та розглянуто класифікацію Інтернет-ресурів, які можна використовувати у навчальному процесі. В [4] детально описано методику проведення двох уроків на теми: хвильовий алгоритм пошуку найкоротшого шляху у лабіринті та впорядкування табличних величин. У [5] наведено короткий огляд систем підготовки до олімпіад з інформатики в деяких країнах. В [6] запропоновано схему, яка складається з семи етапів, для розв'язання олімпіадної задачі. Аналіз розглянутих джерел показує, що автори не пропонують рівневої диференціації методик з описом тем та переліком відповідних задач, що вбачається недоліком. Відповідно, у цій статті пропонується методика підготовки до олімпіад з врахуванням поділу на рівні та описуються її особливості.

Мета статті - розробити елементи методичної системи, що передбачають чотирирівневий підхід до підготовки до олімпіад з інформатики для учнів середніх шкіл, детально описати теми для кожного з рівнів, здійснити підбір задач з кожної теми.

Методи дослідження: аналіз і узагальнення досвіду багаторічної практичної підготовки учнів до олімпіад з інформатики, досвіду роботи інших тренерів, відбір і систематизація олімпіадних задач різних рівнів складності, робота з науковими та науково- методичними джерелами, системний підхід до навчання інформатики.

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

Виклад основного матеріалу

При підготовці до олімпіад з інформатики будемо виділяти такі вимоги до підбору задач за темами та визначення рівнів:

1) наявність цікавої фабули та викликання інтересу в учнів (завоювати увагу учнів і затягнути їх займатись олімпіадною інформатикою, відволікши їх від гаджетів, з якими вони все більше і більше проводять час);

2) ілюстративність (щоб можна було зручно зобразити задачу, що дасть можливість краще побачити її і, можливо, звести до ізоморфної чи подібної задачі);

3) зв'язність (важливі теми мають продовження на наступному рівні і вимагають якісної підготовки з попереднього матеріалу; наприклад, на другому рівні вивчають загальні поняття про графи та ввід/вивід відповідних структур даних, на третьому це використовують при вивченні пошуку в глибину, який використовується на четвертому рівні при знаходженні компонента сильної зв'язності графа);

4) різноманітність (система завдань враховує наявність різних типів мислення, видів пам'яті і т.д.).

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

Модель процесу створення системи завдань (як сукупності завдань, певним чином пов'язаних між собою і які мають кілька рівнів організації, що знаходяться у відношенні послідовного підпорядкування) складається з наступних етапів: дидактичний олімпіада інформатика

1) аналітичний (аналіз змісту навчального матеріалу, формулювання цілей та встановлення їх взаємної відповідності, відбір змісту);

2) проєктувальний (вибір методів та методичних прийомів, визначення форм подання навчального матеріалу, способів його подання);

3) технологічний (технічне створення систем завдань відповідно до вимог, що пред'являються).

Пропонується навчати учнів програмування за схемою, яка передбачає чотири рівні. Це базовий, середній, високий та продвинутий.

Елементи методики навчання основ програмування, а також літературу, яка охоплює базовий рівень, наведено в [7]. У процесі вивченні певної теми учні об'єднуються у різновікові групи за методом народного вчителя України Валентина Мельника [8]. Основним чинником формування таких груп є не вікові особливості, а рівень засвоєння тем, які відповідають певному рівню.

Базовий рівень дозволяє опанувати ази програмування і включає в себе такі теми, як лінійні, умовні та циклічні конструкції, робота з рядками та з масивами, бітові операції, процедури і функції. Кожна з тем включає в себе певну кількість різних підтем. Зокрема, тема "Лінійні конструкції" включає в себе такі підтеми:

* приклад простої програми;

* константи та змінні;

* типи змінних;

* оператор присвоювання;

* арифметика у С++, арифметичні вирази та операції;

* введення, виведення у консоль у стилі С та С++ (функції printf, scanf, потоки cin, cout);

* форматоване введення та виведення у консоль.

Підбір задач до цих підтем подано в Таблиці 1.

Кожна тема опрацьовується за схемою, наведеною на рисунку 2.

Схема пов'язує таку послідовність заходів, що дозволять здійснювати ефективне навчання:

* Виклад матеріалу нової теми, відповіді на запитання учнів після лекції.

* Надання презентації та інших допоміжних матеріалів.

* Розбір задач, що викликали в учнів найбільші труднощі на початку нового заняття, перед поданням нового матеріалу.

* Надання великої кількості практичних задач із нової теми та можливість їх розв'язувати впродовж тижня. Чим легша тема, тим більше задач надається. Зокрема, на перші теми базового рівня таких задач може бути сотні. Перевірка здійснюється за допомогою систем онлайн-тестування на eolymp.com та codeforces.com.

Задачею для контролю знань, яка вкаже на добре володіння темою “Масиви” та ряд попередніх тем і, відповідно, вкаже на можливість перейти на наступний рівень, може бути така: вивести елементи заданого масиву у такому порядку - спочатку найменший, далі найбільший, далі наступний найменший, далі наступний найбільший і т.д. програмування і вміння шукати помилки в написаних програмах. Існують різні формати проведення і оцінювання розв'язків на олімпіадах. Але на кожній з них кількість отриманих балів за запропонований розв'язок напряму залежить від його правильності. Тому потрібно реалізувати ідею без помилок, бажано з першого разу. В інакшому випадку учасник повинен швидко виявити та виправити неточності. Вміння швидко налагоджувати програми - одне з найважливіших вмінь у програмуванні. Без сумніву, переможці престижних олімпіад з програмування - це дуже талановиті й наполегливі люди. Існує безліч олімпіад, які проводяться найбільшими ІТ-компаніями. Технічні рекрутери упродовж довгих років слідкують за результатами різних олімпіад і конкретних учасників. Найбільш перспективним і успішним пропонують пройти стажування, комбінуючи його з навчанням в університеті, з можливістю отримати повноцінну роботу після закінчення навчання. Взагалі, участь в олімпіадах з програмування складається з двох етапів: складання ефективних алгоритмів поставлених задач і їх реалізація. На перший погляд може здатися, що для досягнення солідних результатів на олімпіадах достатньо вивчити певну кількість існуючих алгоритмів, а потім лише успішно використати їх під час змагання, не залишаючи іншим жодного шансу на перемогу. Насправді це так не працює. Інакше займатися олімпіадною інформатикою було б не так цікаво. Задачі формуються таким чином, що недостатньо вгадати алгоритм, який потрібно використати для їх розв'язування. Практично завжди для повного розв'язку необхідно модернізувати відомий алгоритм, доповнити його, скомбінувати декілька алгоритмів в одній програмі. Без вигадування власних нових ідей не обійтися.

Задачею для контролю знань, яка вкаже на добре володіння темою "Динамічне програмування" для другого рівня може бути наступна задача [9, задача 5101]. Ходжа Насреддін знаходиться у лівій верхній клітині таблиці розміром n Ч n, а його осел - у правій нижній. Ходжа ходить лише вправо чи вниз, осел - лише вліво чи вгору. Скількома способами вони можуть зустрітися в одній клітині? (Два способи вважаються різними, якщо в них маршрути Ходжі або віслюка різні). Задано на вході одне число n (1 ? n ? 50). Виведіть одне число - кількість способів, якими Ходжа та осел зустрічатимуться. Оскільки це число може бути дуже великим, виведіть його за модулем 9929.

Наведена задача потребує при розв'язуванні знання принципу оптимальності Беллмана при досить простому заповненні двовимірного масиву.

Задачею для контролю знань, яка вкаже на добре володіння вищезгаданою темою "Динамічне програмування", але вже на третьому рівні, може бути наступна задача [9, задача 1528]. Підпослідовність утворюється з рядка видаленням нуля або кількох символів із нього. За заданими трьома рядками Вам слід підрахувати кількість їхніх різних непорожніх загальних підпослідовностей. Кожен тест складається із трьох слів, які знаходяться у трьох різних рядках. Довжина кожного слова трохи більше 50. Кожне слово складається з латинських літер нижнього регістру ('a' - 'z'). Для кожного тесту вивести в окремому рядку кількість різних непорожніх загальних підпослідовностей.

Для розв'язання цієї задачі потрібно використати тривимірний масив, значення у якому будемо заповнювати, використовуючи принцип оптимальності Беллмана.

Тема "Ізоморфне представлення задач в інформатиці" є авторською і частина її була розроблена спільно з Богданом Задорожним, який у 2019 році виборов перше місце на заключному етапі конкурсу-захисту науково-дослідницьких робіт Малої академії наук.

Відмітимо, що тема "Підходи до зменшення часу роботи програм, які пов'язані з послідовностями та матрицями" є добре розкрита в [10]. Достатньо багато інформації за темами четвертого рівня наведено в [11-14].

Висновки з даного дослідження і перспективи подальших розвідок

Запропонована чотирирівнева методична система підготовки учнів до олімпіад з інформатики успішно використовувалась при навчанні учнів Ужгородської загальноосвітньої спеціалізованої школи-інтернату з поглибленим вивченням окремих предметів (УЗСШІзПВОП), на літніх та зимових учнівських школах з програмування в Кременчуці та на літніх школах з програмування в Хусті. Багато учнів УЗСШІзПВОП навчались за цією системою підготовки, брали участь в олімпіадах і ставали призерами різних етапів Всеукраїнської учнівської олімпіади з інформатики. Також вказаний підхід пройшов успішне апробування в умовах дистанційного навчання [15]. Багато хто з учнів продовжував займатись олімпіадами з програмування і вже будучи студентами. З часом вони отримували запрошення та проходили стажування в провідних ІТ-компаніях світу [16, 17].

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.