Езици за програмиране С и С++

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


Тема на лекцията (CITB101)
Дата
CITB101
Sources
Тема на упражнението (CITB102)
Дата
CITB102
1
Увод
Анатомия на компютър. Компилиране на проста програма.
Chapter 1. Introduction I
The Anatomy of a Computer, Translating Human-Readable Programs to Machine Code
7.10


Операционна система Ubuntu. Инсталиране и основни дейности с нея. Работа с конзола (текстов терминал). Текстов редактор.
2.10
2
Програмни езици С и С++. Алгоритми
Програмни езици. Грешки. Алгоритми. Числени типове. Вход и изход.
Chapter 1. Introduction II
Programming Languages Design and Evolution, Compiling a Simple Program, Errors, The Compilation Process, Algorithms
14.10
ccc3e.zip
hello.cpp

Компилатор. Написване, компилиране и изпълнение на програма на  С++. Компилиране на прости програми.  Среди за програмиране в MS Windows -  Dev-C++ || Code::Blocks 9.10
3
Основни типове данни
Числени типове; вход и изход; операция присвояване; константи; аритметика; низове; форматиране на изхода
Chapter 2. Fundamental Data Types
Number Types, Input and Output, Assignment, Constants, Arithmetic, Strings, Output Formatting
21.10
ch2.zip

Видове грешки: от синтаксис, от свързване, run-time (делене с 0), логическа грешка. Числени типове, представяне на числата в компютъра; вход и изход. Underflow, overflow, грешка от закръгляне.

16.10
4
Обекти
Конструиране на обекти; използване на обекти; обекти от реалния свят; оператор if.
Chapter 3.
Objects [pdf-file]
Constructing Objects, Using Objects, Real-Life Objects
28.10
ch3.zip

Числени типове, представяне на числата в компютъра; вход и изход. присвояване; константи; аритметика; форматиране на изхода. Низове. Оператор if.
Първо домашно.
23.10
5
Тест 1
4.11


Първо контролно
30.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
11.11
ch4.zip
Конструиране на обекти; използване на обекти; обекти от реалния свят
6.11
7
Функции - I
Функциите като черни кутии; писане на функции; коментари; връщани стойности; параматри; странични ефекти; процедури
Chapter 5.
Functions I
Functions as Black Boxes, Writing Functions, Function Comments, Return Values, Parameters, Side Effects, Procedures, Reference Parameters
18.11
futval.cpp
approx.cpp
printime.cpp
raisesal.cpp

Оператор if/else; оператори за сравнение; сравняване на числа тип double; проверка на входа; прости цикли; обработка на входна редица; използване на булеви променливи
13.11
8
Функции - II
Параметри-псевдоними; област на действие на променливи; глобални променливи; стъпково прецизиране; от псевдокод към код.
Chapter 5.
Functions II
Variable Scope and Global Variables, Stepwise Refinement, From Pseudocode to Code
23.11
(неделя)

9:40
210-1

raisesal.cpp
global.cpp
intname.cpp

Функциите като черни кутии; писане на функции; коментари; връщани стойности; параматри; странични ефекти; процедури.
20.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
25.11
ch6.zip
Параметри-псевдоними; област на действие на променливи; глобални променливи; стъпково прецизиране; от псевдокод към код.
Второ домашно.
27.11
10
Тест 2
2.12


Второ контролно
4.12
11
Управляващи оператори - I
Няколко алтернативи; вложени клонове; булеви операции; закони на DeMorgan, цикъл for
Chapter 7.
Advanced Control Flow I
Multiple Alternatives, Nested Branches, Boolean Operations, DeMorgan's Law, The for Loop

9.12
ch7.zip
Писане на класове. 11.12
12
Управляващи оператори - II
Цикли for и do; вложени цикли; обработка на текстов вход; симулации
Chapter 7.
Advanced Control Flow II
The do Loop, Nested Loops, Processing Text Input, Simulations
16.12
ch7.zip
Оператор if - алтернативи, вложени оператори. Булеви операции; закони на DeMorgan, цикъл for.
18.12
13
Тестване и дебъгване
Единични тестове; избор на тестове; оценка на тестове; макрос assert; проследяване на програма; дебъгер.
Chapter 8. Testing and Debugging
Unit Tests, Selecting Test Cases, Test Case Evaluations, Assertions, Program Traces, The Debugger
23.12
ch8.zip
Debugging
gdb-quick-ref

Цикли for и do; вложени цикли; обработка на текстов вход.
Проверка на програми. Работа с дебъгер.
8.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
6.01
ch9.zip
Използване на вектори. Вектори като параметри и върнати стойности. Успоредни вектори.
Трето домашно
15.01

(на 13.01 няма да има лекция) 13.01




15
Тест 3
20.01


Трето контролно
22.01

Семестриален изпит
3.02
13:00, 304-2