CSCB112 Програмиране
Анотация:
Курсът е практическо въведение в езика С++, като чрез анализ и разширяване на примерни програмни текстове се изясняват основните езикови конструкции и тяхната употреба. Синтаксисът на езика С е в основата на много от съвременните обектно-ориентирани езици за програмиране, като С++, Java, С#, Objective C. Курсът обхваща и представя характерни особености на езика С++: типове данни, управляващи конструкции (условни конструкции и цикли), масиви, указатели функции, функции от по-висок ред, рекурсия, стандартни библиотеки, структури и др. Изясняват се основните структури за управление и принципите на модулното програмиране.
Запознаването с условни оператори, числови сравнения и булеви операции е важна част от всеки начален курс по програмиране. Особено внимание се отделя на стратегии при обработване на входа и изхода, както и на обработката на грешки при вход и изход. Следва запознаване с функции, концепция за предаване на параметри, документиране на функции, област на действие на променливите, рекурсивни функции.
Преподавател(и):
проф. Георги Тупаров д-р
Светослав Торбов
ас. Георги Кирков
доц. Методи Трайков д-р
Описание на курса:
Компетенции:
Успешно завършилите курса студенти:
1) Знаят:
• Структури за управление в езиците С и C++;
• Стандартни типове и класове в езиците С и С++;
• Стандартни библиотеки в езиците С и С++;
• Масиви;
• Функции, функции от по-висок ред, рекурсия;
• Структури;
• Указатели.
2) Могат:
• Да използват интегрирана среда за разработка на програма;
• Да съставят функции;
• Да работят със стандартните библиотеки, типове и класове в езиците С и С++;
• Да съставят програми за конзолни приложения.
Предварителни изисквания:
Студентите да имат знания и/или умения:
- Стартиране на компютърно приложение;
- Работа с текстов редактор;
- Достъп до ресурси в Интернет;
- Обща компютърна грамотност.
Форми на провеждане:
Редовен
Учебни форми:
Лекция
Език, на който се води курса:
Български
Теми, които се разглеждат в курса:
- Разработка на програма. Компоненти на програмния текст.
- Разработка на програма. Компоненти на програмния текст.
- Променливи. Стандартни типове. Изрази. Преобразуване на типа. Операции.
- Променливи. Стандартни типове. Изрази. Преобразуване на типа. Операции.
- Структури за управление. Графично представяне. Условен оператор.
- Структури за управление. Графично представяне. Условен оператор.
- Цикли. Оператори continue и for. Оператори while и do while.
- Цикли. Оператори continue и for. Оператори while и do while.
- Указатели. Масиви - Част 1.
- Указатели. Масиви - Част 1.
- Указатели. Масиви - Част 2.
- Указатели. Масиви - Част 2.
- Тест 1
- Подготовка за КР 1
- Тип enum. Символни низове в езика С.
- Контролна работа 2
- Функции - Част 1.
- Функции - Част 1.
- Функции - Част 2.
- Функции - Част 2 (Рекурсия).
- Функции от по-висок ред.
- Функции от по-висок ред.
- Области на действие. Оператор :: . Видове променливи.
- Предикати
- Структури.
- Подготовка за КР 2
- Тест 2
- Контролна работа 2
- Синтактичен анализ и намиране на стойност на израз. Търсене с връщане назад. Обобщение.
- Синтактичен анализ и намиране на стойност на израз. Търсене с връщане назад. Обобщение.
Литература по темите:
1. Шилдт Х., Практически самоучител по С++, Софтпрес, 2001.
2. Eckel B., Thinking in C++. Volume 2: Standard Libraries & Advanced Topics, 2nd edition, MindView Inc.,1999.
3. Eckel B., Thinking In C++. Volume 2: Practical Programming, 2nd edition, MindView Inc., 2004.
Допълнителна литература:
1. Wirth N. Algorithms + data structures = programs. Prentice-Hall, Englewood Cliffs, N. J. 1973.
2. Уирт Н. Алгоритми + структури данни = програми. Техника, 1980.
3. Наков П., Добриков П., Програмиране=++Алгоритми, 2005.
Средства за оценяване:
Два теста и две контролни работи през 7-ма и 14- та седмица от семестъра + 0.5 над оценката при > от 12 присъствия, + 0.5 над оценката при > от 8 домашни, оценени над 5.
За освобождаване от изпит е необходимо да са направени два теста и две контролни работи с оценка >= 3.