WWW.UK.X-PDF.RU

БЕЗКОШТОВНА ЕЛЕКТРОННА БІБЛІОТЕКА - Книги, видання, автореферати

 
<< HOME
CONTACTS




Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы

Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы
Pages:   || 2 |

«ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4. С. 148–155 Electronics and information technologies. 2014. Issue 4. P. 148–155 ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ В ...»

-- [ Страница 1 ] --

ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4. С. 148–155

Electronics and information technologies. 2014. Issue 4. P. 148–155

ІНФОРМАЦІЙНІ ТЕХНОЛОГІЇ В НАВЧАЛЬНОМУ ПРОЦЕСІ

УДК 681.3.06

ПРОГРАМНА ПІДТРИМКА ПРАКТИЧНИХ ЗАНЯТЬ

З ПРОГРАМУВАННЯ

В. Бондарєв

Харківський національний університет радіоелектроніки,

пр. Леніна, 14, 61060, Харків, Україна

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

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

Відомо, що програмування потребує вправ, і не можна навчитися програмувати, тільки слухаючи лекції і читаючи книги. Практичні заняття з вирішенням завдань і розбиранням вирішень відіграють важливу роль у навчальному процесі. Однак групові заняття в традиційній формі, коли одна людина вирішує завдання біля дошки, а решта 15– 20 студентів за цим спостерігають, не дають великого ефекту. Вони марні і для студентів з рівнем знань нижче середнього, які завдання не розуміють, і для студентів з рівнем вище середнього, які на такому занятті просто нудьгують. Було б добре давати студентам різні завдання – складніші для відмінників, легші для тих, які відстають, однак обмеженням стають можливості викладача, йому одному за всім не встежити. Та вихід є, і він полягає в автоматичній перевірці студентських вирішень.

Перевірку вирішень і низку інших функцій виконує клієнт-серверна комп’ютерна програма. Програма працює в бездротовій локальній мережі, утвореній з портативного комп’ютера викладача і ноутбуків або планшетів студентів за допомогою маршрутизатора Wi-Fi. Таку мережу викладач може створити “у декілька кліків” безпосередньо перед початком заняття.

Наголосимо, що є програмні засоби для віддаленої компіляції та виконання програмного коду [1–3] і масиви завдань, призначені для вирішення [4, 5]. Тут їх детально не розбиратимемо, проте з упевненістю зазначимо, що жодне з них не забезпечує необхідної оперативності й гнучкості для вирішення поставленого завдання – адаптації практичних занять до індивідуального рівня підготовки студентів.

У пропонованого програмного засобу два види користувачів – студенти і викладач, який проводить заняття. З боку викладача сценарій застосування програми виглядає так.

Перед початком заняття викладач вносить до бази даних програми обліковий склад груБондарєв В., 2014 В. Бондарєв. 149 ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

пи і заздалегідь підготовлені завдання. Зрозуміло, і список студентів, і завдання можна використовувати більше ніж для одного заняття.

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

Викладач додає нові завдання у міру їх вирішення і може видаляти або замінювати завдання, якщо початковий вибір був невдалим.

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

Цикл виправлення коду студентом і автоматичної перевірки на сервері може повторюватися скільки завгодно разів.

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

Користувацький інтерфейс викладача становлять два вікна – головне і вікно стану завдання (рис. 1).

Рис. 1. Головне вікно програми.

150 В. Бондарєв ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

Головне вікно розділене на дві частини. Ліву частину займає панель завдань, праву

– список студентів.

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

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

У разі натискання на кнопку відкривається вікно стану завдання (рис. 2).

Рис. 2. Вікно стану завдання.

У вікні стану задачі видно особисті дані студента, назву й умову завдання, хронологію процесу його вирішення. Хронологія – це горизонтальна смуга внизу вікна з точками на ній. Точки відображають моменти часу, коли студент надсилав вирішення на перевірку.

Викладач, обравши точку на смузі, бачить код, надісланий студентом у відповідний момент часу, і результат перевірки цього коду на сервері. Так викладач може простежити В. Бондарєв. 151 ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

весь процес вирішення завдання і визначити, яких знань не вистачало студенту для його успішного виконання.

Студент, підключившись до локальної мережі і набравши в браузері відповідну адресу, бачить обліковий склад своєї групи. Він вибирає в списку своє ім’я, і перед ним відкривається вікно вирішення завдань (рис. 3).

Рис. 3. Вікно вирішення завдань.

Вікно вирішення завдань містить усі завдання, задані студенту викладачем. Кожне завдання має назву, умову і поле для введення програмного коду. Студент обирає будьяке зі ще не вирішених і вводить код вирішення в поле введення. Коли студент хоче перевірити своє вирішення на сервері, він натискає на кнопку “Перевірити” і невдовзі бачить відповідь сервера. Кнопка “Скидання” повертає поле введення в початковий стан.

Якщо завдання має підказки, то поряд з кнопками “Перевірка” та “Скидання” є кнопки підказок. На кожній кнопці написано “Підказка” і число, що визначає ціну підказки.

Особливість цієї системи полягає в тому, що в пропонованих студентам завданнях не потрібно писати закінчені програми з уведенням даних, друкуванням результатів і точкою входу, а треба розробити фрагмент коду, який повинен безпомилково працювати в певному контексті. Опис контексту та вимог до коду і становить умову завдання. Такий 152 В. Бондарєв ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

підхід, по-перше, дає змогу формулювати різні завдання і, по-друге, позбавляє студента від написання рутинного коду, економлячи час заняття. Наведемо кілька прикладів завдань, які треба вирішувати мовою С#.

Привласнення. Оголосити цілу змінну a і зробити її такою, що дорівнює 5. Оголосити цілу змінну b і присвоїти їй 1. Збільшити обидві змінні на 1, скласти їх і суму помістити в змінну c.

Обмін значень змінних. Є дві цілі змінні a і b (тобто вони вже оголошені й отримали якісь значення). Написати код, який поміняє їхні значення місцями.

Сторони трикутника. Є три дійсні змінні: a, b, c. Перевірити, чи можуть їхні значення бути довжинами сторін трикутника. Якщо можуть, то занести значення true в логічну змінну t. Якщо не можуть, то занести туди ж значення false.


Купить саженцы и черенки винограда

Более 140 сортов столового винограда.


Факторіал. Оголосити статичний метод Fact (), який отримує невід’ємне ціле число і повертає факторіал цього числа. Зауважити, що 0! = 1.

Заповнення масиву. Оголосити статичний метод Fill(), який отримує ціле число n і повертає цілий масив з n елементів, заповнений числами 0, 1, 2,..., n - 1.

Окружність з конструкторами. Оголосити клас Circle – коло з відкритими властивостями подвійної точності X і Y (координати центра) та R (радіус). У класі повинен бути відкритий конструктор з трьома параметрами (ордината, абсциса і радіус) і конструктор за замовчуванням, який надає всім властивостям нульових значень.

Нульові елементи. Оголосити клас MyList, який успадковує бібліотечний клас ListT і має відкриту властивість ZeroCount тільки для читання, яка показує, скільки в колекції нульових елементів. Нульовим уважають елемент, значення якого дорівнює default(T).

Узагальнений делегат. Оголосити узагальнений делегат з ім’ям Del. Делегат повинен посилатися на функції, які мають два однотипні параметри і повертають логічне значення.

Ітератор для ферзя. Оголосити статичний ітератор Queen(), який отримує місце розташування ферзя на шаховій дошці і в довільному порядку перераховує всі клітини, що перебувають під боєм цього ферзя. Клітина, на якій стоїть ферзь, під боєм не перебуває. Клітина задана рядком з двох символів, наприклад, “А1”, “E2”, “В8”.

Підготовлена задача має чотири частини: назву, умову, підказки і контекст.

Назва складається зі шляху та імені завдання. Шлях визначає місце завдання в задачнику, бо сам задачник має ієрархічну структуру. Ім’я завдання має бути унікальним для завдань, що мають однаковий шлях.

Умова завдання – це довільний текст мовою, зрозумілою студенту.

Підказки повинні допомогти студенту виконати завдання, якщо в нього виникають труднощі. Підказок може бути декілька, однак не менше однієї, тому що перша підказка є такою лише за формою. Зміст “першої підказки” буде виведено у вікні коду в разі отримання завдання студентом. Цілком нормально, якщо першою підказкою буде порожній рядок.

Контекст – це програма, що компілюється. Контекст включає в себе і код авторського вирішення задачі. У контексті цей код відокремлений “дужками” – рядками //BEGIN і //END для мов C++ і C# і рядками #//BEGIN і #//END для мови Пітон. Такі обмежувачі є прозорими для компіляторів і це спрощує викладачу підготовку авторського вирішення.

В. Бондарєв. 153 ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

У базі даних системи завдання зберігаються у форматі XML. Зовнішнє подання завдання може збігатися з внутрішнім, тобто бути тим же XML, а може мати альтернативну форму, так званий простий формат.

У простому форматі всі частини завдання розташовані послідовно і розділені рядком, що складається не менше ніж з трьох дефісів. Рядок з дефісів може завершуватися інформаційним маркером. Зокрема, роздільник, що передує умові, завершується назвою мови програмування – cs, cpp або ру, роздільник, що передує підказці, завершується числом – ціною завдання після підказки. Логічно, якщо з кожною наступною підказкою це число буде меншим від попереднього, однак це не обов’язково. Нижче наведено приклад завдання в простому форматі.

присвоєння/Обмін Значень Змінних

---------------------- CS Є дві цілі змінні a і b (вони вже оголошені й отримали якісь значення). Напишіть код, який поміняє їх значення місцями.

------------------- 10 // int a = 3, b = 5; - не треба розкоментовувати цей рядок

------------------- 9 // int a = 3, b = 5; - не треба розкоментовувати цей рядок // Скористайтеся третьою змінною int t = a;

--------------------using System;

public class Program { public static int Main() { int a = 3, b = 5;

//BEGIN int t = a;

a = b;

b = t;

//END if (a == 5 && b == 3) return 0;

return 1;

} } З отриманого досвіду підготовка одного завдання потребує від 5 до 20 хв, однак її роблять один раз, після чого завдання можна використовувати багаторазово. Корисним може виявитися спільний масив підготовлених завдань, з якого можуть брати завдання всі викладачі.

Програмний проект складається з двох додатків: мережевого, LanPractice, і настільного, LanTutor,та двох бібліотек: Compilers и Repository.

Веб-застосування LanPractice забезпечує роботу студентів. За його допомогою студент отримує завдання, пише код вирішення, надсилає його на перевірку і бачить результати цієї перевірки. Настільне застосування LanTutor потрібно для роботи викладача.

154 В. Бондарєв ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.

Воно дає змогу керувати завданнями, списком студентів, видавати завдання студентам і спостерігати за ходом їхнього виконання.

Обидві програми пов’язані через загальну базу даних, доступ до якої забезпечує бібліотека Repository. Інша бібліотека, Compilers, дає змогу оперативно компілювати студентський код і виконувати його в тестовому оточенні розв’язуваної задачі. Цією бібліотекою також користуються обидві програми. Загальна схема проекту показана на рис. 4.

Рис. 4. Схема програми. Стрілки на схемі означають залежності між її елементами.

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

У поточній версії програми студенти можуть виконувати завдання мовами C#, C++ і Python, однак система є відкритою щодо мов програмування, і перелік дозволених мов можна легко розширювати.

Важливою частиною проекту є задачник – збірник завдань, спеціально підготовлених до використання в системі. Кількісний і якісний склад завдань буде ліпшим, якщо у створенні задачника візьмуть участь усі викладачі, що користуються системою.

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

В. Бондарєв. 155 ISSN 2224-087X. Електроніка та інформаційні технології. 2014. Випуск 4.



Pages:   || 2 |
Похожие работы:

«Круглий стіл Громадянське суспільство України в цифрах 24 січня 2012 року м. Київ Зміст Важливі факти щодо розвитку громадянського суспільства в Україні – 2010 рік... Паспорт громадянського суспільства України. Випуск 2: Базова оцінка розвитку громадянського суспільства (2010 рік). Показники розвитку громадянського суспільства України у європейському контексті...20 Рекомендації по покращенню системи державної статистки, обліку та оцінки розвитку інститутів громадянського суспільства в Україні.2...»

«Приватне акціонерне товариство «Науково-дослідний інститут прикладних інформаційних технологій» ЦЕНТР СЕРТИФІКАЦІЇ КЛЮЧІВ ПрАТ „НАУКОВО-ДОСЛІДНИЙ ІНСТИТУТ ПРИКЛАДНИХ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ” Інструкція користувача послуг ЦСК 2013 р. ЗМІСТ 1. Вступ 1.1. Анотація 1.2. Призначення програми 1.3. Системні вимоги 1.4. Інсталяція програми 2. Початок роботи з програмою 2.1. Завантаження сертифікатів 2.1.1.Завантаження кореневого сертифікату ЦЗО 2.1.2. Завантаження сертифікату ЦСК 2.1.3. Завантаження...»

«ПОЧАТОК РОБОТИ Початок роботи з HP ENVY14 © Copyright 2011 Hewlett-Packard Зауваження щодо продукту Development Company, L.P. У цьому посібнику користувача описуються Microsoft і Windows – це зареєстровані у США функції, які є загальними для більшості торгові марки корпорації Microsoft. Bluetooth – моделей. У Вашому комп’ютері деякі функції це торгова марка, що належить її власнику й можуть бути недоступні. використовується компанією Hewlett-Packard Company згідно з ліцензією. Intel – це...»

«Міністерство транспорту та зв'язку України Державна адміністрація зв’язку Одеська Національна Академія зв’язку ім. О.С.Попова В. А. Шаповаленко, Л. М. Буката, О. Г. Трофименко Чисельні методи та моделювання на ЕОМ МОДУЛЬ Чисельне обчислення функцій, характеристик матриць і розв’язування нелінійних рівнянь та систем рівнянь Частина 1 Навчальний посібник для студентів напрямів бакалаврської підготовки “Автоматизація та комп’ютерно-інтегровані технології”, “Телекомунікації”, “Мережі та системи...»

«Посібник користувача Nokia 5130 XpressMusic Видання 1 ДЕКЛАРАЦІЯ ВІДПОВІДНОСТІ NOKIA CORPORATION заявляє, що цей продукт RM-495 відповідає важливим вимогам та іншим відповідним умовам Директиви 1999/5/EC. Копія декларації відповідності міститься на веб-сайті http://www.nokia.com/phones/declaration_of_conformity/. © 2008 Nokia. Всі права захищені. Nokia, Nokia Connecting People та Navi є торговими марками або зареєстрованими торговими марками Nokia Corporation. Nokia tune є звуковим знаком Nokia...»

«Міністерство освіти і науки України Вінницький національний технічний університет МОДЕЛЮВАННЯ І ОПТИМІЗАЦІЯ ПРОЦЕСІВ РОЗВИТКУ ВИРОБНИЧИХ СИСТЕМ З УРАХУВАННЯМ ВИКОРИСТАННЯ ЗОВНІШНІХ РЕСУРСІВ ТА ЕФЕКТІВ ОСВОЄННЯ Монографія За загальною редакцією Т. М. Боровської Вінниця ВНТУ УДК 519.81 M 74 Автори: Т. М. Боровська, С. П. Бадьора, В. А. Северілов, П. В. Северілов Рекомендовано до друку Вченою радою Вінницького національного технічного університету Міністерства освіти і науки України (протокол № 13...»

«МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ КИЇВСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ІМЕНІ ТАРАСА ШЕВЧЕНКА КОНСТРУКТИВНА ГЕОГРАФІЯ ТА РАЦІОНАЛЬНЕ ВИКОРИСТАННЯ ПРИРОДНИХ РЕСУРСІВ НАУКОВИЙ ЗБІРНИК Заснований у 2012 р. Випуск 11 (5) частина 2 Київ – 2014 УДК 911.3: 796.5 (100) (477) ББК 65.04 РЕЦЕНЗЕНТИ: Шищенко П.Г., чл.-кор. АПНУ, д. геогр. н., проф., засл. діяч науки і техніки; Масляк П.О., д. геогр. н., проф. Конструктивна географія та раціональне використання природних ресурсів: Наук. зб./ Ред. кол.: Я.Б....»

«Науковий вісник, 2004, вип. 14.5 в 20-25 летнем возрасте (интенсивность изреживания 15-20 %) и в 40-50 лет (интенсивность изреживания не более 15 %). Рубки ухода должны носить, прежде всего, санитарный и селекционный характер. Литература 1. Парниковый эффект, изменение климата и экосистемы: пер. с англ./ Болин Б., Десс Б.Р., Ягер Дж., Уоррик Р.// Л.: Гидрометеоиздат, 1989. – 560 с.2. Уткин А.И. Углеродный цикл и лесоводство// Лесоведение. – 1995, № 5. – С. 3-20. 3. Писаренко А.И. Глобальное...»

«Київський національний університет імені Тараса Шевченка Геологічний факультет МЕТОДИЧНІ ВКАЗІВКИ ДО ЛАБОРАТОРНОЇ РОБОТИ СУБД Access для студентів першого та другого курсів спеціальностей 0702, 0703, 0704 Київ – 2009 Тема_9_ ч _1.doc 2 Зміст 1. Вступ.. 3 2. Типи і властивості полів.. 3 3. Створення баз даних.. 6 4. Контекстні меню.. 10 5. Cтворення копій таблиць.. 13 6. Зв'язування таблиць.. 14 7. Запити.. 18 8. Завдання на лабораторну роботу.. 22 Фото на обкладинці студента Ковтуна Тема_9_ ч...»

«Наукова програма Наукова програма ІІ пленарне засідання 16.10–16.20 Дослідження режимів катетерної 17.10–17.20 Обробка термометричних зображень 13.20 – 14.30 «Концепція факторів ризику у контексті профілактики» радіочастотної абляції тканин міокарда відкритого серця М.М. Сичик, д. мед. н.; В.Б. Максименко, Б.Б. Кравчук, В.В. Шликов, к. техн. н.; В.Й. Котовський, к. техн. н.; Головуючі: І.М. Горбась, О.М. Барна О.О. Пунщикова, Б.В. Бацак М.М. Гаган 13.20–13.40 Пацієнт високого ризику в епіцентрі...»




Продажа зелёных и сухих саженцев столовых сортов Винограда (по Украине)
Тел.: (050)697-98-00, (067)176-69-25, (063)846-28-10
Розовые сорта
Белые сорта
Чёрные сорта
Вегетирующие зелёные саженцы


 
2013 www.uk.x-pdf.ru - «Безкоштовна електронна бібліотека»