CITB100 Програмиране

Учебна програма, график за лекциите и упражненията, учебни материали [2015/2016]


Тема на лекцията
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