Функции. (част 1) Трифон Трифонов. 9 ноември 2016 г. Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г.

Размер: px
Започни от страница:

Download "Функции. (част 1) Трифон Трифонов. 9 ноември 2016 г. Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г."

Препис

1 Функции (част 1) Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 1 / 9

2 Функциите в математиката Какво е функция в математиката? Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

3 Функциите в математиката Какво е функция в математиката? f : Dom Ran Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

4 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

5 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

6 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Нека F Dom Ran Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

7 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Нека F Dom Ran така че x!y(x, y) F (функционалност) Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

8 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Нека F Dom Ran така че x!y(x, y) F (функционалност) еквивалентно: ако (x, y 1 ) F и (x, y 2 ) F, тогава y 1 = y 2 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

9 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Нека F Dom Ran така че x!y(x, y) F (функционалност) еквивалентно: ако (x, y 1 ) F и (x, y 2 ) F, тогава y 1 = y 2 Ако (x, y) F пишем f (x) = y. Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

10 Функциите в математиката Какво е функция в математиката? f : Dom Ran Dom дефиниционна област Ran обхват, област от стойности Нека F Dom Ran така че x!y(x, y) F (функционалност) еквивалентно: ако (x, y 1 ) F и (x, y 2 ) F, тогава y 1 = y 2 Ако (x, y) F пишем f (x) = y. F графика на функцията f Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 2 / 9

11 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

12 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

13 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

14 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

15 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

16 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

17 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 double square(double x) { return x * x; } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

18 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 double square(double x) { return x * x; } Пример 2 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

19 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 double square(double x) { return x * x; } Пример 2 d : R R R R R Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

20 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 double square(double x) { return x * x; } Пример 2 d : R R R R R d(x 1, y 1, x 2, y 2 ) = (x 2 x 1 ) 2 + (y 2 y 1 ) 2 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

21 Какво е програмна функция? Относително независима част от програмата, извършваща определено пресмятане Може да бъде използвана многократно Пример 1 f : R R f (x) = x 2 double square(double x) { return x * x; } Пример 2 d : R R R R R d(x 1, y 1, x 2, y 2 ) = (x 2 x 1 ) 2 + (y 2 y 1 ) 2 double distance(double x1, double y1, double x2, double y2) return sqrt(square(x2 - x1) + square(y2 - y1)); } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 3 / 9

22 Какво е подпрограма? Относително независима част от програмата, извършваща определена последователност от действия Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 4 / 9

23 Какво е подпрограма? Относително независима част от програмата, извършваща определена последователност от действия Може да бъде изпълнявана многократно Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 4 / 9

24 Какво е подпрограма? Относително независима част от програмата, извършваща определена последователност от действия Може да бъде изпълнявана многократно Още: процедура, метод Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 4 / 9

25 Какво е подпрограма? Относително независима част от програмата, извършваща определена последователност от действия Може да бъде изпълнявана многократно Още: процедура, метод Пример 1 void printhello() { cout << "Hello!\n"; } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 4 / 9

26 Какво е подпрограма? Относително независима част от програмата, извършваща определена последователност от действия Може да бъде изпълнявана многократно Още: процедура, метод Пример 1 void printhello() { cout << "Hello!\n"; } Пример 2 void printreversedigits(int n) { while (n > 0) { cout << n % 10; n /= 10; } } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 4 / 9

27 Процедури и функции Функцията извършва пресмятане и връша резултат Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 5 / 9

28 Процедури и функции Функцията извършва пресмятане и връша резултат Процедурата изпълнява поредица от оператори Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 5 / 9

29 Процедури и функции Функцията извършва пресмятане и връша резултат Процедурата изпълнява поредица от оператори Понякога двете понятия се смесват... int readnumber(int from, int to) { int n; do { cout << "n = "; cin >> n; } while (n < from n > to); return n; } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 5 / 9

30 Процедури и функции Функцията извършва пресмятане и връша резултат Процедурата изпълнява поредица от оператори Понякога двете понятия се смесват... int readnumber(int from, int to) { int n; do { cout << "n = "; cin >> n; } while (n < from n > to); return n; } В C++ се наричат просто функции Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 5 / 9

31 Дефиниране на функция <сигнатура> { <тяло> } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

32 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

33 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

34 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

35 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int <формални_параметри> ::= <празно> void <параметър> {, <параметър> } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

36 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int <формални_параметри> ::= <празно> void <параметър> {, <параметър> } <параметър> ::= <тип> [<идентификатор>] Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

37 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int <формални_параметри> ::= <празно> void <параметър> {, <параметър> } <параметър> ::= <тип> [<идентификатор>] ако <идентификатор> се пропусне, параметърът няма име и не се използва Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

38 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int <формални_параметри> ::= <празно> void <параметър> {, <параметър> } <параметър> ::= <тип> [<идентификатор>] ако <идентификатор> се пропусне, параметърът няма име и не се използва Пример: f (x, y) = x + 5 Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

39 Дефиниране на функция <сигнатура> { <тяло> } <сигнатура> ::= [ <тип_резултат> void ] <идентификатор> ( <формални_параметри> ) void = празен тип, не връща резултат ако типът на резултата се пропусне, подразбира се int <формални_параметри> ::= <празно> void <параметър> {, <параметър> } <параметър> ::= <тип> [<идентификатор>] ако <идентификатор> се пропусне, параметърът няма име и не се използва Пример: f (x, y) = x + 5 <тяло> ::= { <оператор> } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 6 / 9

40 Извикване на функция <име>(<фактически_параметри>) Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

41 Извикване на функция <име>(<фактически_параметри>) <фактически_параметри> ::= <празно> void <израз> {, <израз> } Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

42 Извикване на функция <име>(<фактически_параметри>) <фактически_параметри> ::= <празно> void <израз> {, <израз> } извикването на функция всъщност е операция с много висок приоритет Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

43 Извикване на функция <име>(<фактически_параметри>) <фактически_параметри> ::= <празно> void <израз> {, <израз> } извикването на функция всъщност е операция с много висок приоритет типът на фактическия параметър се съпоставя с типа на съответния формален параметър Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

44 Извикване на функция <име>(<фактически_параметри>) <фактически_параметри> ::= <празно> void <израз> {, <израз> } извикването на функция всъщност е операция с много висок приоритет типът на фактическия параметър се съпоставя с типа на съответния формален параметър ако се налага, прави се преобразуване на типовете Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

45 Извикване на функция <име>(<фактически_параметри>) <фактически_параметри> ::= <празно> void <израз> {, <израз> } извикването на функция всъщност е операция с много висок приоритет типът на фактическия параметър се съпоставя с типа на съответния формален параметър ако се налага, прави се преобразуване на типовете <формален_параметър> = <фактически_параметър> Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 7 / 9

46 Връщане на резултат return [<израз>]; Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

47 Връщане на резултат return [<израз>]; оператор за връщане на резултат на функция Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

48 Връщане на резултат return [<израз>]; оператор за връщане на резултат на функция типът на <израз> се съпоставя с типа на резултата на функцията Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

49 Връщане на резултат return [<израз>]; оператор за връщане на резултат на функция типът на <израз> се съпоставя с типа на резултата на функцията ако се налага, прави се преобразуване на типовете Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

50 Връщане на резултат return [<израз>]; оператор за връщане на резултат на функция типът на <израз> се съпоставя с типа на резултата на функцията ако се налага, прави се преобразуване на типовете работата на функцията се прекратява незабавно Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

51 Връщане на резултат return [<израз>]; оператор за връщане на резултат на функция типът на <израз> се съпоставя с типа на резултата на функцията ако се налага, прави се преобразуване на типовете работата на функцията се прекратява незабавно стойността на <израз> е резултатът от извикването на функцията Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 8 / 9

52 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

53 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

54 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Декларацията не е задължителна Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

55 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Декларацията не е задължителна Една функция може да бъде декларирана няколко пъти... Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

56 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Декларацията не е задължителна Една функция може да бъде декларирана няколко пъти......но може да бъде дефинирана само веднъж Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

57 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Декларацията не е задължителна Една функция може да бъде декларирана няколко пъти......но може да бъде дефинирана само веднъж Неизпълнените обещания водят до проблеми... Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

58 Деклариране на функция <декларация_на_функция> ::= <сигнатура>; Декларацията е обещание за дефиниция на функция Декларацията не е задължителна Една функция може да бъде декларирана няколко пъти......но може да бъде дефинирана само веднъж Неизпълнените обещания водят до проблеми......освен когато никой не разчита на тях Трифон Трифонов (УП 16/17) Функции 9 ноември 2016 г. 9 / 9

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Триф

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Триф и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 9 ноември 2016 г. Трифон Трифонов (УП 16/17) и низове 9 ноември 2016 г. 1 / 5 Логическо

Подробно

C++

C++ Управляващи оператори в C++ Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 18 30 октомври 2018 г. Трифон Трифонов (УП 18/19) Управляващи оператори в C++ 18 30 октомври

Подробно

Рекурсия Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. 4 януари

Рекурсия Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. 4 януари Рекурсия Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. 4 януари 2017 г. Трифон Трифонов (УП 16/17) Рекурсия 21.12.16

Подробно

Канонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно и

Канонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно и Канонична форма на клас или 4 (голямата четворка) Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 6 април 2017 г. Трифон Трифонов

Подробно

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г ноември 2018 г. Трифон Трифонов (УП 18/19) Ма

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г ноември 2018 г. Трифон Трифонов (УП 18/19) Ма Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 15 29 ноември 2018 г. Трифон Трифонов (УП 18/19) Масиви и низове 15 29 ноември 2018 г. 1 / 16 Масиви Логическо

Подробно

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 15 ноември 6 декември 2018 г. Трифон Трифонов (УП 1

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 15 ноември 6 декември 2018 г. Трифон Трифонов (УП 1 Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, 2018/19 г. 15 ноември 6 декември 2018 г. Трифон Трифонов (УП 18/19) Масиви и низове 15.11-6.12.2018 г. 1 / 17 Масиви

Подробно

Lush Green

Lush Green Класове Какво са класовете? Основен инструмент на ООП Средство за дефиниране на абстрактни типове данни Синтактична конструкция, която позволява логическо групиране на данни и операциите над тях Дефиниция

Подробно

Lush Green

Lush Green Конструктори Жизнен цикъл на обект За обекта се заделя памет и се свързва с неговото име Извиква се подходящ конструктор на обекта... (достъп до компоненти на обект, изпълняване на операции) Достига се

Подробно

Виртуални функции

Виртуални функции Виртуални функции Статично свързване Как компилаторът избира кой метод или коя функция да бъде извикана? Прави се сравнение между формални и фактически параметри и се избира най-точното съвпадение в случай,

Подробно

Структура на програма в C - Част 2 - типове, функции

Структура на програма в C - Част 2 - типове, функции Структура на програма в C Част 2 - типове, функции Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София 10 март 2019 г. И. Георгиев, Х.

Подробно

Програмиране на Паскал

Програмиране на Паскал Поради връзката на С++ с езика С в голяма част от литературата е прието записването С/С++. Това е найизползваният език за програмиране в света, поради което синтаксисът на някои от по-новите езици като

Подробно

4

4 Наследяване и 4 Трифон Трифонов Обектно-ориентирано програмиране, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 11 май 2017 г. Трифон Трифонов (ООП 16/17) Наследяване и голямата

Подробно

Синтаксис за дефиниране на функции Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 6 януари 2016 г. Трифон Трифонов (ФП-И 15/

Синтаксис за дефиниране на функции Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 6 януари 2016 г. Трифон Трифонов (ФП-И 15/ Синтаксис за дефиниране на функции Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 6 януари 2016 г. Трифон Трифонов (ФП-И 15/16) Синтаксис за дефиниране на функции 6 януари 2016

Подробно

Динамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Тр

Динамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Тр Динамична памет Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 1 поток, спец. Софтуерно инженерство, 2016/17 г. 21 декември 2016 г. Трифон Трифонов (УП 16/17) Динамична памет 21 декември

Подробно

-

- Лениво оценяване и програмиране от по-висок ред Трифон Трифонов Функционално програмиране, спец. Информатика, 2015/16 г. 7 януари 2016 г. Трифон Трифонов (ФП-И 15/16) Лениво оценяване 7 януари 2016 г.

Подробно

В тази част, ще разгледаме аритметичните и логически операции, както, и включването им в изрази. В следващата таблица са дадени всички възможни операц

В тази част, ще разгледаме аритметичните и логически операции, както, и включването им в изрази. В следващата таблица са дадени всички възможни операц В тази част, ще разгледаме аритметичните и логически операции, както, и включването им в изрази. В следващата таблица са дадени всички възможни операции в езикът C и С++. Символ Предназначение Аритметични

Подробно

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве

Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически униве Предефиниране на оператори. Копиращ конструктор. Оператор за присвояване Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision :

Подробно

Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София

Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Дефиниране на шаблон Шаблони (Templates) Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.1 9 март 2005 г. template< class

Подробно

Структура на програма в C - Част 7 - масиви, оператор за индексиране, sizeof оператор

Структура на програма в C - Част 7 - масиви, оператор за индексиране, sizeof оператор Структура на програма в C Част 7 - масиви, оператор за индексиране, sizeof оператор Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София

Подробно

Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София

Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Динамична памет. Конструктори и деструктори Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.3 16 ноември 2004 г. Пример:

Подробно

Указатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23

Указатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23 Указатели. Маисиви, указатели, параметри на функции Калин Георгиев 21 декември 2016 г. Калин Георгиев Увод в програмирането 21 декември 2016 г. 1 / 23 Указатели! Калин Георгиев Увод в програмирането 21

Подробно

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА У Ч Е Б Н А П Р О Г Р А М А ЗА ЗАДЪЛЖИТЕЛНА ПРОФЕСИОНАЛНА ПОДГОТОВКА ПО ПРОГРАМИРАНЕ И АЛГОРИТМИЧНИ ЕЗИЦИ ЗА ПРОФЕСИЯ: КОД 482010 ИКОНОМИСТ - ИНФОРМАТИК СПЕЦИАЛНОСТ:

Подробно

Проф

Проф Утвърдил:.. / доц. д-р Е. Великова / Утвърден от Факултетен съвет с протокол... /... СОФИЙСКИ УНИВЕРСИТЕТ СВ. КЛИМЕНТ ОХРИДСКИ Факултет по Математика и Информатика Специалност: Компютърни науки М И К 0

Подробно

Лабораторно упражнение 6 Тема: Оператори за цикли в езика C++. Реализиране на циклични алгоритми I. Цел на лабораторното упражнение Да се затвърдят зн

Лабораторно упражнение 6 Тема: Оператори за цикли в езика C++. Реализиране на циклични алгоритми I. Цел на лабораторното упражнение Да се затвърдят зн Лабораторно упражние 6 Тема: Оператори за цикли в езика C++. Реализира на циклични алгоритми I. Цел на лабораторното упражние Да се затвърдят знанията на студентите за организацията и синтаксиса на програми

Подробно

3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението

3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението 3. Синтактичен анализ. Граматика на учебен програмен език STUDENT. Извеждане на изречения от правилата на граматиката Цел на упражнението Упражнението представя кратко въведение в синтактичния анализ.

Подробно

При изпълнението на програма се извършват определени действия над данните, дефинирани в програмата.тези данни могат да бъдат постоянни ( константи ) и

При изпълнението на програма се извършват определени действия над данните, дефинирани в програмата.тези данни могат да бъдат постоянни ( константи ) и При изпълнението на програма се извършват определени действия над данните, дефинирани в програмата.тези данни могат да бъдат постоянни ( константи ) или изменящи се (променливи). Тези данни най-често бива

Подробно

2. Наследяване в C++ Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 1 февруари 2007 г. 1 Наследяване 1 2

2. Наследяване в C++ Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 1 февруари 2007 г. 1 Наследяване 1 2 2. Съдържание Съдържание Наследяване (Rev: 1.2) Любомир Чорбаджиев 1 lchorbadjiev@elsys-bg.org 1 февруари 2007 г. 1 Наследяване 1 2 2 3 Полиморфизъм 9 1. Наследяване Наследяване UML UML unified modeling

Подробно

Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Re

Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София Re Обработка на грешки Изключения Любомир Чорбаджиев Технологическо училище Електронни системи Технически университет, София lchorbadjiev@elsys-bg.org Revision : 1.1 27 февруари 2005 г. 1 #include < cstdio

Подробно

Класове в C++ (Rev: 742) Любомир Чорбаджиев 1 20 октомври 2006 г. Съдържание Съдържание 1 Обектно-ориентирано програмиране 1

Класове в C++ (Rev: 742) Любомир Чорбаджиев 1 20 октомври 2006 г. Съдържание Съдържание 1 Обектно-ориентирано програмиране 1 Класове в C++ (Rev: 742) Любомир Чорбаджиев 1 lchorbadjiev@elsys-bg.org 20 октомври 2006 г. Съдържание Съдържание 1 Обектно-ориентирано програмиране 1 1.1 Модулност............................ 1 1.2 Обектно-ориентирана

Подробно

Slide 1

Slide 1 Списъци. Структура и синтаксис. Създаване и показване. Основни операции(добавяне, изваждане на елемент или цял подсписък; подреждане). Трансформации. проф. дмн С. Христова Списъци Списъците / list са основна

Подробно

2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнениет

2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнениет 2. Лексически анализ. Основни понятия и алгоритъм на лексическия анализ. Програмна структура на лексическия анализатор Цел на упражнението Упражнението представя кратко въведение в теорията на лексическия

Подробно

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА

ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА СРЕДИ ЗА ПРОГРАМИРАНЕ ПРОГРАМНО ОСИГУРЯВАНЕ НА КОМПЮТЪРА Същност на програмното осигуряване За да могат компютрите да разбират описаните на езика за програмиране алгоритми, те трябва да бъдат преведени

Подробно

Информатика

Информатика ХИМИКОТЕХНОЛОГИЧЕН И МЕТАЛУРГИЧЕН УНИВЕРСИТЕТ - СОФИЯ ИНФОРМАТИКА част първа лектор: доц. д-р Атанас Атанасов Катедра Програмиране и използване на компютърни системи Лекция 3 ЛОГИЧЕСКИ ОСНОВИ НА КОМПЮТЪРНИТЕ

Подробно

Структура на програма в C - Част 6 - goto, switch, break и continue клаузи

Структура на програма в C - Част 6 - goto, switch, break и continue клаузи Структура на програма в C Част 6 - goto, switch, break и continue клаузи Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София 21 април

Подробно

Програмен език C Пламен Танов Ненко Табаков Мартин Вачовски Технологично училище Електронни системи Технически университет София версия 0.5

Програмен език C Пламен Танов Ненко Табаков Мартин Вачовски Технологично училище Електронни системи Технически университет София версия 0.5 Програмен език C Пламен Танов Ненко Табаков Мартин Вачовски Технологично училище Електронни системи Технически университет София версия 0.5 Литература Необходими програми Kernighan & Ritchie - The C Programming

Подробно

Black and White

Black and White Advanced C++ Memory Management Йордан Димитър Зайков Трендафилов Memory Management Effective C++ 2 nd ed: 3, 5, 7, 8, 9, 10 More Effective C++: 1, 3, 8 Exceptional C++: 35, 36 Какво всъщност прави new?

Подробно

Компютърна Графика и Презентации - Графично моделиране

Компютърна Графика и Презентации - Графично моделиране Компютърна Графика и Презентации Графично Моделиране. Генеративна Компютърна Графика гл. ас. д-р А. Пенев Генеративната КГ се занимава с: Построяване на обекти (модели); Генерация на изображение; Преобразуване

Подробно

УЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА IV КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА

УЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА IV КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА УЧЕБНА ПРОГРАМА ПО ВИЗУАЛНО ПРОГРАМИРАНЕ ЗА IV КЛАС (ВЪВЕЖДАНЕ НА ДИСЦИПЛИНАТА ПО ПРОЕКТ ИНОВАТИВНО УЧИЛИЩЕ ) КРАТКО ПРЕДСТАВЯНЕ НА УЧЕБНАТА ПРОГРАМА Обучението по Визуално Програмиране в начален етап

Подробно

Microsoft Word - VM22 SEC55.doc

Microsoft Word - VM22 SEC55.doc Лекция 5 5 Диференциални уравнения от първи ред Основни определения Диференциално уравнение се нарича уравнение в което участват известен брой производни на търсената функция В общия случай ( n) диференциалното

Подробно

Маисви

Маисви МАСИВИ 1. Структурни типове данни Структура от данни - организирана информация, която може да бъде описана, създадена и обработена с помощта на програма. Скаларни типове данни: Целочислен int Реален double

Подробно

Slide 1

Slide 1 Въведение в VHDL Паралелни оператори Паралелни оператори Паралелен оператор оператор, който се изпълнява едновременно с другите оператори от този тип. Process - Процес

Подробно

Анализ и оптимизация на софтуерни приложения

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Какво могат и какво не могат компилаторите Съдържание 1. Оптимизационен континуум 2. Някои известни видове оптимизации 2/49 Оптимизационен

Подробно