| Тема на лекцията CITB100 | Дата CITB100 | Тема на упражнението CITB102 | Дата CITB102 | ||
| 1 | Увод Анатомия на компютър. Компилиране на проста програма. Chapter 1. Introduction I The Anatomy of a Computer, Translating Human-Readable Programs to Machine Code | 1.10 | Операционна система Ubuntu. Инсталиране и
            основни дейности с нея. Работа с конзола (текстов терминал).
            Текстов редактор. | ||
| 2 | Програмни
                езици С и С++. Алгоритми Програмни езици. Грешки. Алгоритми. Числени типове. Вход и изход. Chapter 1. Introduction II Programming Languages Design and Evolution, Compiling a Simple Program, Errors, The Compilation Process, Algorithms | 8.10 | Компилатор. Написване, компилиране и
            изпълнение на програма на  С++. Компилиране на прости
            програми.  Среди за програмиране в MS Windows -  Dev-C++ ||
                  Code::Blocks Видове грешки: от синтаксис, от свързване, run-time (делене с 0), логическа грешка. | ||
| 3 | Основни
                типове данни Числени типове; вход и изход; операция присвояване; константи; аритметика; низове; форматиране на изхода Chapter 2. Fundamental Data Types Number Types, Input and Output, Assignment, Constants, Arithmetic, Strings, Output Formatting | 15.10 | Числени типове, представяне на числата в
            компютъра; вход и изход. Underflow, overflow, грешка от
            закръгляне. Присвояване; константи; аритметика. Форматиране
            на изхода. Низове. | ||
| 4 | Обекти Конструиране на обекти; използване на обекти; обекти от реалния свят; оператор if. Chapter 3. Objects [pdf-file] Constructing Objects, Using Objects, Real-Life Objects | 22.10 | Конструиране на обекти; използване на обекти;
            обекти от реалния свят; оператор if. Първо домашно. | ||
| 5 | Тест 1 | 29.10 | Първо контролно | ||
| 6 | Основни
                управляващи оператори Оператор if и if/else; оператори за сравнение; проверка на входа; прости цикли; обработка на входна редица; използване на булеви променливи Chapter 4. Basic Control Flow The if Statement, The if/else Statement, Relational Operators, Input Validation, Simple Loops, Processing a Sequence of Inputs, Using Boolean Variables | 5.11 | Оператор if/else; оператори за
            сравнение; сравняване на числа тип double;
            проверка на входа; прости цикли; обработка на входна редица;
            използване на булеви променливи | ||
| 7 | Функции
                - I Функциите като черни кутии; писане на функции; коментари; връщани стойности; параматри; странични ефекти; процедури Chapter 5. Functions I Functions as Black Boxes, Writing Functions, Function Comments, Return Values, Parameters, Side Effects, Procedures, Reference Parameters | 12.11 | Използване на функции; писане на функции;
            коментари; връщани стойности; параматри; странични ефекти;
            процедури. | ||
| 8 | Функции
                - II Параметри-псевдоними; област на действие на променливи; глобални променливи; стъпково прецизиране; от псевдокод към код. Chapter 5. Functions II Variable Scope and Global Variables, Stepwise Refinement, From Pseudocode to Code | 19.11 | Параметри-псевдоними; област на действие на променливи; глобални променливи; стъпково прецизиране; от псевдокод към код. | ||
| 9 | Класове Откриване на класове; интерфейс; капсулиране; член-функции; конструктори по подразбиране и с параметри; достъп да членове-данни; сравняване на член-функции с обикновени функции Chapter 6. Classes Discovering Classes, Interface, Encapsulation, Member Functions, Default Constructors, Constructors with Parameters, Accessing Data Fields, Comparing Member Functions with Nonmember Functions | 26.11 | Писане на класове. Второ домашно. | ||
| 10 | Тест 2 | 3.12 | Второ контролно | ||
| 11 | Управляващи
                оператори - I Няколко алтернативи; вложени клонове; булеви операции; закони на DeMorgan, цикъл for Chapter 7. Advanced Control Flow I Multiple Alternatives, Nested Branches, Boolean Operations, DeMorgan's Law, The for Loop | 10.12 | Оператор if - алтернативи, вложени
            оператори. Булеви операции; закони на DeMorgan, цикъл for. | ||
| 12 | Управляващи
                оператори - II Цикли for и do; вложени цикли; обработка на текстов вход; симулации Chapter 7. Advanced Control Flow II The do Loop, Nested Loops, Processing Text Input, Simulations | 17.12 | Цикли for и do; вложени
            цикли; обработка на текстов вход. Симулации | ||
| 13 | Тестване
                и дебъгване Единични тестове; избор на тестове; оценка на тестове; макрос assert; проследяване на програма; дебъгер. Chapter 8. Testing and Debugging Unit Tests, Selecting Test Cases, Test Case Evaluations, Assertions, Program Traces, The Debugger | 7.01 | Проверка на програми. Проследяване на
            работата на програмата. Използване на дебъгер. | ||
| 14 | Вектори Използване на вектори за съхраняване на данни. Индекси. Вектори като параметри и върнати стойности. Успоредни вектори Chapter 9. Vectors and Arrays Using Vectors to Collect Data Items, Vector Subscripts, Vector Parameters and Return Values, Removing and Inserting Elements, Parallel Vectors | 14.01 | Използване на вектори. Вектори като параметри
            и върнати стойности на функции. Успоредни вектори. Трето домашно | ||
| 15 | Тест 3 | 21.01 | Трето контролно | ||
| Семестриален изпит | 4.02,13:00, 210-1 |