Алгоритмізація та програмування1

ID: 6757
Навчальна дисципліна професійної підготовки
Год внедрения: 
2019.
Количество кредитов ЭКТС: 
5.00.
Содержит расчетно-графическую работу
Форма контроля: 
Экзамен.
Преподаватель: 
Количество аудиторных занятий: 
30 годин лекційних занять, 30 години лабораторних робіт.

Анотація навчальної дисципліни

Мета дисципліни:

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

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

 

Програмні компетентності

Здатність застосовувати знання у практичних ситуаціях.

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

Здатність оволодіти сучасними технологіями програмування та тестування програмного забезпечення.

 

Програмні результати навчання

Проводити системний аналіз об’єктів проектування та обґрунтовувати вибір структури, алгоритмів та способів передачі інформації в ІСТ.

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

 

Кількість аудиторних занять

30 годин лекційних занять, 30 години лабораторних робіт

 

Форми організації освітнього процесу та види навчальних занять

  • Л – лекційні заняття;
  • ЛР – лабораторні роботи;
  • СРС – самостійна робота здобувача вищої освіти;
  • РГР – Розрахунково-графічна робота;
  • МКР – модульна контрольна робота;
  • К – консультації.

 

Тематика та види навчальних занять

  • 1 тиждень
    • Л1. Введення в архітектуру комп’ютера. Поняття алгоритму. Властивості алгоритму. Вимоги до алгоритмів та способи їх опису. Графічна схема алгоритму. [6, c.199-200] 
    • ЛР1. Побудова блок-схем циклічних алгоритмів. [6, c.217-218], [15, c.12-15]
    • СРС. К.
  • 2 тиждень
    • Л2. Історія розвитку мов програмування. Класифікації мов програмування. Основні кроки розробки програми на С ++. [6, c.61-62]
    • ЛР2. Інтегроване середовище розробки програм. [15, c.17-24]
    • СРС. К.
  • 3 тиждень
    • Л3. Основні поняття мови програмування С++. Введення і виведення даних. [8, c.32-36]. 
    • ЛР3.  Складання лінійних програм. [6, c. 197-205], [15, c. 37-40]
    • СРС. К.
  • 4 тиждень
    • Л4. Типи даних. Сумісність типів. Перетворення типів даних. [1, c. 23-26], [5, c. 40-42]
    • ЛР4.  Типи даних в С++.[1, c. 23-26], [5, c. 40-42] 
    • СРС. К.
  • 5 тиждень
    • Л5. Константи, літерали, змінні, вирази. Арифметичні операції мови С++. Операції відносин і логічні оператори. Пріоритети операцій. [6, c. 109-113], [6, c. 294-299] 
    • ЛР5. Стандартні математичні функції. [6, c. 294-299], [15,c. 34-37]
    • СРС. К.
  • 6 тиждень
    • Л6. Структура програми на мові С++. Директиви препроцесора. Заголовки. Простори назв. Поняття «функції» мови програмування. Введення - виведення даних  на мові  програмування С++. Коментарі в мові C ++. [9, c.25-28]
    • ЛР6. Налагодження програм: степпінг і точки зупинки. [15, c. 15-17]
    • СРС. К.
  • 7 тиждень
    • Л7. Алгоритми з розгалуженнями. Умовний оператор  if. Складні логічні вирази та їх застосування в умовному операторі.  [6, c. 205-212] 
    • ЛР7.  Робота з скороченим оператором if [6, c. 205-212]
    • СРС. К.
  • 8 тиждень
    • Л8. Оператор множинного вибору switch. [6, c.281-282].
    • ЛР8. Робота з оператором switch. [6, c.281-282].
    • МКР1. СРС. К.
  • 9 тиждень
    • Л9. Циклічні алгоритми. Цикли з передумовою (оператор while) та цикли з постумовою (оператор do-while). [6, c. 212-114], [6, c. 279-281] 
    • ЛР9.  Рішення типових задач з оператором while. [6, c. 279-281]
    • СРС. К.
  • 10 тиждень
    • Л10. Цикли із лічильником (оператор for). Безкінечний цикл. [6, c.269-279].
    • ЛР10. Оператор циклу з лічільником for. [6, c.269-279].
    • СРС. К.
  • 11 тиждень
    • Л11. Основи структурного програмування. Об’явлення та визначення функцій. Передача аргументів у функцію. Функції у різних файлах. [6, c. 327-339] 
    • ЛР11. Програмування з використанням функцій. [6, c. 327-339]
    • СРС. К.
  • 12 тиждень
    • Л12. Одновимірні масиві. Властивості використання масивів на мові С++. Базові операції обробки одновимірних масивів. [6, c. 261-276]
    • ЛР12. Одновимірний масив. [6, c. 261-276].
    • СРС. К. 
  • 13 тиждень
    • Л13. Методи сортування та пошуку в масивах. [6, c. 1073-1081] 
    • ЛР13. Обчислення в одновимірному масиві.  [6, c. 261-276]
    • СРС. К.
  • 14 тиждень
    • Л14. Символьні рядки. Стандартні функції для роботи з символами та рядками. [6, c. 1034—1049]
    • ЛР14. Рядки в С++. [6, c. 1034—1049]
    • СРС. К.
  • 15 тиждень
    • Л15. Рекурсивні алгоритми. [6, с.381-392]
    • ЛР15. Рекурсія. [6, c. 63-65]
    • МКР2. СРС. К.

 

Індивідуальна робота

Виконується РГР.

Мета РГР: набуття загальних та спеціальних компетентностей майбутніх бакалаврів, поглиблення теоретичних знань з теми «Застосування циклів для вирішення завдань» стосовно до придбання практичних навичок написання програм розрахунку задач, потребующих застосування циклів.

  • 1–8 тижні Вибір теми. Підбір літератури з обраної теми. Написання теоретичного та практичного розділів роботи. Аналіз написаної роботи з точки зору відповідності вимогам до оформлення і до змісту розрахункової роботи
  • 9-15 тижні Формування остаточного варіанту розрахункової роботи. Передача розрахункової роботи викладач.. Аналіз та оцінка розрахункоовї роботи викладачем

 

Самостійна робота

Самостійна робота складає 90 годин. Розподіл самостійної роботи за видами навчальних робіт:

  • підготовка до лекційних занять – 15 годин;
  • підготовка до лабораторних робіт– 30 годин;
  • виконання РГР – 15 годин;
  • підготовка до екзамену – 30 годин.

 

Процедура оцінювання

Система оцінювання рівня навчальних досягнень ґрунтується на принципах ЄКТС та є накопичувальною. Дисципліна поділяється на 2 семестрові модулі у 1 семестрі. Здобувачі протягом семестру готуються до лекційних та лабораторних робіт, виконують 2 модульні контрольні роботи, РГР.

Модульні контрольні роботи виконуються у письмовій формі. Модульна робота складається з теоретичної частини (1 запитання) та практичної частини (1 задача). Відповідь на  теоретичне питання оцінюється 10 балами. Правильне розв’язання задачі оцінюється в 10 балів.

Кожний модуль оцінюється у максимально можливі 50 балів.

Максимальна оцінка за повний обсяг виконаних навчальних елементів дисципліни у кожному семестрі – 100 балів. 

Семестровий модуль № 1

  • ЛР1- ЛР16.  – 20 балів.
  • РГР(ч.1) - 10 балів.
  • МКР1. – 20 балів (8 тиждень). 

Семестровий модуль № 2

  • ЛР17- ЛР30.  – 20 балів. 
  • РГР (ч.2) - 10 балів
  • МКР2. – 20 балів (15 тиждень).

 

Умови допуску до підсумкового контролю

До екзамену допускаються здобувачі вищої освіти, які виконали всі види навчальних елементів навчальної дисципліни на не менш, ніж на 60 %.

Екзамен відбувається за всіма тематичними (змістовними) модулями 1 семестру дисципліни.

Складання/перескладання екзаменів організується за встановленим відділом аспірантури розкладом.

 

Політика освітнього процесу

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

Дотримуватись принципів академічної доброчесності. 

Виконаний не свій варіант завдання здобувачем не оцінюється.

Робота, яка виконана після встановлених викладачем термінів, не приймається.

Відсутність здобувача на екзамені або на контрольній роботі відповідає оцінці «0».

Складання/перескладання екзаменів – за встановленим деканатом розкладом.

Під час лекції здійснювати телефонні дзвінки забороняється.

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

 

РЕКОМЕНДОВАНА ЛІТЕРАТУРА

  1. Вірт Н. Алгоритми і структури даних: Пер. з англ. / Н. Вірт. - СПб .: Невський діалект, 2008. - 352 с. Режим доступу: http://snilit.tspu.ru/uploads/files/default/virt.pdf
  2. Павловська Т.О. С / С ++: Програмування на мові високого рівня. - СПб .: Пітер, 2005. - 461 с. Режим доступу http://cph.phys.spbu.ru/documents/First/books/7.pdf
  3. Пахомов Б.І. С / С ++ і MS Vssual C ++ 2010 року для початківців. СПб.: БХВ-Петербург, 2008 Режим доступу: https://proklondike.net/books/cpp/pahomov-c-i-ms-visual-c-2010-dlya-nach...
  4. Джесс Ліберті. Опановуй самостійно С ++. 3 і-е. М .: Вільямс. - 2000. Режим доступу: https://royallib.com/read/liberti_dgess/osvoy_samostoyatelno_s_za_21_den...
  5. Г. Шілдт. Повний довідник по С ++. 4-е видання. - М .: Вільямс. - 2006. - 791 с. Режим доступу: http://sharpened.ucoz.ru/lib/polnyj_spravochnik_po_c-gerbert_shildt-2006...
  6. Х. Дейтел Х. М., Дейтел П. Дж. Як програмувати на С ++. -М .: Біном, 2008. - 1 454 с. Режим доступу: http://lib.maupfib.kg/wp-content/uploads/2015/12/c-.pdf 
  7. Бйорн Страуструп Мова програмування С ++. - М .: Біном, 2011. - 1 136 с.  Режим доступу: http://8361.ru/6sem/books/Straustrup-Yazyk_programmirovaniya_c.pdf
  8. Прата С. Мова програмування С ++. Лекції і вправи: пров. з англ. / С. Прата. - 5-е изд. - М.: Вільямс, 2006. - 960 с. Режим доступу: http://www.dut.edu.ua/uploads/l_1061_59682868.pdf
  9. Дінман М.І. - C ++ Опановуй на прикладах -СПб.: БХВ-Петербург, 2006 - 384 с. Режим доступу: http://mirknig.su/knigi/programming/155386-c-osvoy-na-primerah.html
  10. Подбельский, В. В. Мова С ++ / В. В. Подбельский. - M.: ФиС, 2001.  Режим доступу: https://www.twirpx.com/file/1361101/
  11. С.В. Глушаков. Практикум по С ++. ФОЛІО - 2006.  Режим доступу: https://www.litmir.me/bd/?b=276260
  12. Ю.Л. Кетков. Введення в мови програмування C і C ++ 290с. Режим доступу: http://mirknig.su/knigi/programming/20686-vvedenie-v-yazyki-programmirov...
  13. Кнут, Д. Мистецтво програмування: т. 1-3. Основні алгоритми / Д. Кнут. - М.: Видавничий дім «Вільямс», 2004. Режим доступу: https://proklondike.net/books/thalg/knut_art1.html
  14. Ахо Хопкрофта Ульман. Структури даних і алгоритми. - М .: Вільямс, 2000. - 384 с. Режим доступу: http://snilit.tspu.ru/uploads/files/default/computer_algorithms.pdf
  15. Косенко О.Д. Методичні вказівки до лабораторних робіт з дисципліни  «Алгоритмізація та програмування»  

 

ІНФОРМАЦІЙНІ РЕСУРСИ

  1. http://www.intuit.ru/department/pl/cpp/
  2. http://www.intuit.ru/department/pl/ccpp/