CITB101 Eзици за програмиране С и С++
Анотация:
В този курс се покриват основите на програмния език C /C++. Покриват се темите: вградени типове данни, управление на програмния поток, функции, масиви и вектори.
Дава се предварителна информация за класове и тяхното използуване.
Преподавател(и):
доц. Васил Фурнаджиев д-р
Описание на курса:
Компетенции:
Успешно завършилите курса студенти:
1) знаят:
• Числени типове данни, входни и изходни операции, оператор за присвояване, символни низове, основи на управление на програмния поток, оператори, функции и процедури, обхват на променлива, глобални променливи, постъпково усъвършенстване, тестване и откриване на грешки, използване на вектори и масиви.
2) могат:
• Да пишат прости програми на C++.
• Да пишат функции.
• Да използват вектори и масиви.
Предварителни изисквания:
Не се изискват никакви предварителни знания и умения.
Форми на провеждане:
Редовен
Учебни форми:
Лекция
Език, на който се води курса:
Български
Теми, които се разглеждат в курса:
Въведение
Какво е програмиране? Анатомия на компютъра. Машинен код и програмни езици. Запознайте се с Вашата програмна среда. Анализ на първата ви програма. Грешки. Решаване на задача: дизайн на алгоритми.
Основни типове данни
Променливи. Аритметични операции. Вход и изход. Решаване на задача: първо проиграваме на ръка. Символни низове.
Условен оператор (Основи на управлението на програмния поток)
Операторът if. Сравняване на числа и символни низове. Множество алтернативи. Вложени разклонения. Решаване на задача: блок-схеми. Решаване на задача: тестване на алтернативите. Булеви променливи и оператори. Приложение: валидация на входа.
Цикли
Цикъл while. Решаване на задача: ръчно проследяване. Цикъл for. Цикъл do. Обработка на входа. Решаване на задача: графично описание на задачата. Често срещани алгоритми за цикъл. Вложени цикли. Случайни числа и симулации.
Функции
Функциите като черни кутии. Имплементация на функции. Подаване на параметри. Връщане на стойност. Функции, които не връщат стойност. Решаване на задача: функции за многократна употреба. Обхват на променлива и глобални променливи. Подаване на параметър по референция. Рекурсивни функции.
Масиви и вектори
Масиви. Често срещани алгоритми с масиви. Масиви и функции. Решаване на задача: Адаптиране на алгоритъм. Решаване на задача: Откриване на алгоритъм чрез манипулация на физически обекти. Двумерни масиви. Вектори.
Литература по темите:
ПРЕПОРЪЧИТЕЛНА ЛИТЕРАТУРА
А. Основен учебник
Cay Horstmann, C++ For Everyone, 2nd Edition, Wiley, 2011.
Б. Ползени книги
Cay Horstmann, Computing Concepts with C++ Essentials, Third Edition, John Wiley & Sons, 2003.
В. Полезни книги на български
[1] Кай Хорстман, Принципи на програмирането със С++, ИК Софтех, София, 2000, 2003 [translation from second edition].
[2] Николай Киров, Сборник от учебни материали по ВЪВЕДЕНИЕ В ПРОГРАМИРАНЕТО, Деметра, София, 2003.
[3] Николай Киров, Сборник от учебни материали по ПРОГРАМИРАНЕ И СТРУКТУРИ ОТ ДАННИ, Деметра, София, 2004.
Средства за оценяване:
През семестъра се провеждат 2 теста (след 7-мата и след 13-та седмица).
Тестовете изискват съставянето на работещи програми, илюстриращи преминатите до момента учебни теми.