Форум Поща Карта на сайта Търсене Връзки Контакти
Начало Обучение Дисциплини в учебните планове на специалностите Информатика (бакалавър) Учебен план Програмиране    English
Факултет по математика и информатика - Програмиране
Специалност
Форма на оценяване
Дисциплината
се води
Информатика (бакалавър) редовно обучение
изпит
 
Анотация
Курсът има за цел да запознае учащите се с основните понятия в програмирането. Особено внимание се отделя на методите и средствата на структурното програмиране и по специално на управляващите структури (последователност, избор, повторение), процедурната абстракция, абстракцията на данните (типове и структури от данни и тяхното представяне), анализът и съставянето на алгоритми (търсене, сортиране, рекурсия, итерация, работа с изучаваните структури от данни). Разглеждат се стратегии за избор на абстрактни типове данни и за повишаване на ефективността при реализацията на конкретни алгоритми. Упражненията илюстрират лекционния материал и са предназначени за практическо усвояване на изучаваните принципи и понятия чрез програмиране на MS Visual C++.
 
Съдържание
  1. Език за програмиране – определение, видове езици за програмиране. Елементи на ЕП. Синтаксис и семантикана ЕП. Методи за описанието на синтаксиса семантиката на ЕП. ЕП и тяхната реализация . Принципи за разработването на ЕП . Oсновни лексикални и синтактични елементи на ЕП.
  2. Програмиране. Програмни грешки. Среди за програмиране: п рограмен редактор, т ранслатор, свързващ редактор, з ареждаща програма и дебъгер. Жизнен цикъл на програмите.
  3. Абстракции в ЕП. Абстракция на данните – данни, модели на данните. Тип на данните в ЕП. Система от типове в ЕП. Силно и слабо типизиране. Базови абстракции на данните: Прости типове данни в ЕП – видове и характеристики, множество от стойности, операции и релации. Изрази. Съвместимост и проверка на типовете в ЕП. Преобразуване на типовете в ЕП.
  4. Абстракция на обработката на данните в ЕП (абстракции за контрол). Прости абстракции за обработка на данните – видове, синтаксис, семантика, приложение, примери. Структурирани абстракции за контрол в ЕП – видове, синтаксис, семантика, предназначение, примери.
  5. Структурни абстракции на данните в ЕП. Абстрактни структури от данни (АСД). Абстрактни типове данни (АТД). Съставни АТД – основни понятия и операции. Класификации на съставните АТД според подредеността, еднотипността, броя на компонентите им и механизмите за достъп.
  6. АТД масив (крайни съпоставяния) – основни понятия, видове, достъп и конструиране, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  7. Прости посочващи типове в ЕП – основни понятия, видове (тип указател, препратка), адреси и достъп до програмните елементи, динамични променливи, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  8. Обработка на данните чрез групиране в ЕП (подпрограми) – видове, механизъм на предаване на параметри, приложение, предимства. Реализация в ЕП – синтаксис, семантика, примери.
  9. АТД низ в ЕП (последователности)– основни понятия, достъп и конструиране, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  10. АТД структура/запис (декартово произведение) – основни понятия, достъп и конструиране, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  11. АТД обединение (разделителен съюз) – основни понятия, достъп и конструиране, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  12. АТД множество (множество степен) – основни понятия, достъп и конструиране, приложение. Реализация в ЕП – синтаксис за деклариране, множество от стойности, операции и релации, примери.
  13. Компютърни алгоритми – оценка на ефективността. Изчислителна сложност на алгоритмите.
  14. Основни алгоритми за обработка на масиви: числени и статистически оценки, икономично съхранение на масив, сортиране, търсене в подреден и неподреден масив, алгоритми с многомерни масиви. Обща идея и подобрения на алгоритмите, словесно описание, изчислителна сложност, реализация.
  15. Алгоритми за обработка на низове – вмъкване, заместване, изтриване, търсене на подниз, задачи за статистика и кодиране на текст , хеширане. Обща идея и подобрения на алгоритмите, словесно описание, изчислителна сложност, реализация.
  16. Алгоритми за обработка на множества – „обхождане“, алгоритъм за намиране на простите числа „Решето на Ератостен“. Обща идея и подобрения на алгоритмите, словесно описание, изчислителна сложност, реализация.
  17. Рекурсия – същност, примери, видове, приложение. Рекурсивни алгоритми – определение, средства за реализация в езиците за програмиране, предимства и недостатъци. Правила за съставяне на рекурсивни алгоритми. Примери на рекурсивни алгоритми – обща идея, словесно описание, изчислителна сложност, реализация. Рекурсия и итерация.
Актуално
Още новини
Архив на новините
© 2009 ФМИ