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

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

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

Препис

1 Структура на програма в C Част 7 - масиви, оператор за индексиране, sizeof оператор Иван Георгиев, Христо Иванов, Христо Стефанов Технологично училище "Електронни системи", Технически университет, София 5 май 2019 г. И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 1 / 20

2 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 2 / 20

3 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 3 / 20

4 Проблем При писане на програми, често се налага да се работи с големи обеми от данни За да могат да бъдат обработени в C, те трябва да се вкарат в променливи, с които след това може да се работи Не е практично един програмист да декларира голямо количество променливи (напр ) една по една Дори и да бъдат декларирани, работата с голям брой променливи е трудоемка, дори и за прости програми, тъй като трябва всяка променлива да бъде посочвана чрез нейното име, за да бъде използвана в израз И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 4 / 20

5 Проблем int main() { int a1; int a2; int a3; int a4; int a5; int a6; int a7; int a8; int a9; int a10; cin >> a1; cin >> a2; cin >> a3; cin >> a4; cin >> a5; cin >> a6; cin >> a7; cin >> a8; cin >> a9; cin >> a10; } cout << a10; cout << a9; cout << a8; cout << a7; cout << a6; cout << a5; cout << a4; cout << a3; cout << a2; cout << a1; Фрагмент 1: Програма за извеждане на 10 числа въведени от потребителя в обратен ред И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 5 / 20

6 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 6 / 20

7 Структури от данни Структурите от данни представляват данни, структурирани (организирани, разположени) в паметта на компютъра по начин, който позволява ефективното им обработване Върху структурите от данни могат да се извършват операции, като най-основните операции са прочитане и променяне на данните съдържащи се в структурата Различните структури от данни поддържат различни операции и са различно ефективни в изпълнението им Например намирането на най-малкия елемент в някои структури е еднакво бързо, независимо от броя на данните в структурата, но промяната на елемент е бавна и зависи от броя данни Поради тази причина, с какви структури от данни работи е най-добре да се работи, зависи от конкретния проблем, който се опитва да реши програмиста И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 7 / 20

8 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 8 / 20

9 Масиви Масивът е структура от данни, която разполага данните си последователно в паметта Всяка една група от данни (наречена още елемент на масива), разполага с уникален пореден номер (индекс) Масивите поддържат операциите прочитане и промяна на елемент, посочен чрез неговия индекс. Те са еднакво бързи за изпълнение и не зависят от броя елементи в масива В C масивите са част от езика и имат специална поддръжка И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 9 / 20

10 Масиви Както всички данни в C, така и масивите се представят чрез променливи с конкретен тип За декларирането на масив е нужно да се посочи типа данни на елементите от масива и техния брой Елементите на масива имат произволни стойности, освен ако не бъдат инициализирани чрез инициализиращ списък Фигура 1: Синтактична диаграма на декларация на масив И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 10 / 20

11 Декларация на масиви int a[10]; Фрагмент 2: Пример за декларация на масив с 10 елемента int b[3] = {1, 2 + 4, 3}; Фрагмент 3: Пример за декларация на масив с 3 елемента с инициализиращ списък И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 11 / 20

12 Инициализиране на масив Инициализиращият списък може да съдържа един или повече на брой изрази, но броят на изразите не трябва да превишава броят елементи в масива Поредният израз от списъка служи за инициализация на поредния елемент от масива (т.е. първият елемент от масива се инициализира с резултата от първия израз в инициализиращия списък, вторият елемент с втория израз и т.н.) В случая, когато в инициализиращият списък има по-малко изрази, отколкото елементи в масива, оставащите неинициализирани елементи имат стойност 0 int a[3] = {1, 2, 3}; // OK int b[3] = {1}; // OK, elements with indices 1 and 2 are '0' int c[3] = {1, 2, 3, 4}; // ERROR Фрагмент 4: Инициализиране на масив И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 12 / 20

13 Инициализиране на масив При инициализиране на масив може да се изпусне посочването на общия брой елементи в масива В такъв случай масивът ще има толкова елементи, колкото изрази в инициализиращия списък /* 'а' and 'b' have 3 elements each, 'c' has 4 elements */ int a[3] = {1, 2, 3}; int b[] = {1, 2, 3}; int c[4] = {1, 2, 3}; Фрагмент 5: Инициализация на масив без посочване на броя елементи И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 13 / 20

14 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 14 / 20

15 Оператор за индексиране Елементите от масива могат да бъдат достъпвани чрез оператора за индексиране Операторът за индексиране създава временен идентификатор за елемент, посочен чрез неговия индекс Фигура 2: Синтактична диаграма на оператор за индексиране Първият операнд е име на масив, а вторият - целочислен израз, чиято стойност се използва за индекс. Изразът се пресмята по време на изпълнение на програмата В C индексите на елементите на един масив започват винаги от 0 и растат в положителна посока (т.е. първият елемент има индекс 0, вторият - 1, третият - 2, и т.н) И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 15 / 20

16 Оператор за индексиране Тъй като операторът за индексиране създава временен идентификатор за елемента, неговият резултат може да участва в операции за присвояване (т.е. е lvalue стойност) int main() { int a[3] = {10, 20, 30}; int i = 1; printf("%d\n", a[0]); // prints '10' printf("%d\n", a[i]); // prints '20' printf("%d\n", a[i - 1]); // prints '10' } for (i = 0; i < 3; i++) { a[i] = i; /* OK, 'a[i]' is lvalue and assigning new values is allowed */ } Фрагмент 6: Оператор за индексиране И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 16 / 20

17 Съдържание 1 Проблем 2 Структури от данни 3 Масиви 4 Оператор за индексиране 5 Оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 17 / 20

18 Оператор sizeof В езика C не са посочени големините в байтове на отделните типове, освен на един - типът char (1 byte) От една страна това позволява езикът да може да се използва от процесори с различни инструкции и архитектури, но от друга страна затормозява писането на програми, тъй като в много случаи има нужда да се знае, колко байта би заела променлива от някакъв тип Тъй като големината на отделните типове зависи от това за какъв процесор се компилира програмата, по време на компилация компилаторът знае колко байта памет заема променлива от някой тип За да се реши проблема е въведен оператор sizeof, чрез който може да се запита компилатора по време на компилиране, колко байта памет би заела променлива от някакъв тип И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 18 / 20

19 Оператор sizeof sizeof(op1) Фрагмент 7: Оператор sizeof Операндът може да е както само име на тип, така и израз, върху чийто тип да се извърши операцията Резултатът от операцията е броя байтове, който би заела променлива от типа, посочен от операнда int main() { int c = 1; printf("%d\n", sizeof(int)); // prints '4' on most computers printf("%d\n", sizeof(c)); // 'c' has type int, prints as above } Фрагмент 8: Примери за оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 19 / 20

20 Оператор sizeof int main() { int c = 1; double a = 2; int q[10]; printf("%d\n", sizeof(c + 1)); /* 'c + 1' has type int prints 4 on most computers */ printf("%d\n", sizeof(c / a)); /* 'c / a' has type double prints 8 on most computers */ printf("%d\n", sizeof(q)); /* 'q' has type int[10] prints 40 on most computers */ } printf("%d\n", sizeof(q) / sizeof(q[0])); /* 'q' has type int[10], 'q[0]' has type int, prints 10 on ALL computers */ Фрагмент 9: Примери за оператор sizeof И. Георгиев, Х. Иванов, Х. Стефанов (ELSYS)Структура на програма в C ELSYS 20 / 20

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

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

Подробно

Структура на програма в C - Част 9 - низове от символи, C-string

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

Подробно

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

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

Подробно

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

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

Подробно

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

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

Подробно

Маисви

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

Подробно

C++

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

Подробно

Масиви и низове Трифон Трифонов Увод в програмирането, спец. Компютърни науки, 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 Масиви

Подробно

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

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

Подробно

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

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

Подробно

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

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е векторизация? 2. Примери 3. на цикли 4. Масиви от структури или структури от масиви 5. на при различни

Подробно

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

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

Подробно

Системи за управление на версии - Работа с git

Системи за управление на версии - Работа с git Системи за управление на версии Работа с git Иван Георгиев, Христо Иванов, Христо Стефанов Tехнологическо училище "Електронни системи", Технически университет, София 28 февруари 2019 г. И. Георгиев, Х.

Подробно

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

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

Подробно

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

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

Подробно

Lush Green

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

Подробно

Lush Green

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

Подробно

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

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

Подробно

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

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

Подробно

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

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

Подробно

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

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

Подробно

ОСНОВИ НА ЕЗИКА С# Интеграция на езиците за програмиране Една от най-добрите черти на.net Framework е възможността за интеграция на множество езици за

ОСНОВИ НА ЕЗИКА С# Интеграция на езиците за програмиране Една от най-добрите черти на.net Framework е възможността за интеграция на множество езици за Интеграция на езиците за програмиране Една от най-добрите черти на.net Framework е възможността за интеграция на множество езици за програмиране. Тя позволява на програмиста да работи на предпочитания

Подробно

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

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

Подробно

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

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

Подробно

Лекции по Програмиране първа част I. Въведение в компютрите и програмирането КОМПЮТЪР = АПАРАТУРА + ПРОГРАМНО ОСИГУРЯВАНЕ Апаратна част Hardware(Харду

Лекции по Програмиране първа част I. Въведение в компютрите и програмирането КОМПЮТЪР = АПАРАТУРА + ПРОГРАМНО ОСИГУРЯВАНЕ Апаратна част Hardware(Харду Лекции по Програмиране първа част I. Въведение в компютрите и програмирането КОМПЮТЪР = АПАРАТУРА + ПРОГРАМНО ОСИГУРЯВАНЕ Апаратна част Hardware(Хардуер)Програмна част Software(Софтуер) Хардуерът включва:

Подробно

Kontrolno 5, variant 1

Kontrolno 5, variant 1 N P - П Ъ Л Н И З А Д А Ч И КОНТРОЛНО 5 ПО ДИЗАЙН И АНАЛИЗ НА АЛГОРИТМИ СУ, ФМИ ( ЗА СПЕЦИАЛНОСТ КОМПЮТЪРНИ НАУКИ, 1. ПОТОК; 3 МАЙ 018 Г. ) Задача 1. Разглеждаме задачата за разпознаване LongestCycle:

Подробно

Класове в 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 Обектно-ориентирана

Подробно

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

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

Подробно

Slide 1

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

Подробно

Потоци (Rev: 1.1)

Потоци  (Rev: 1.1) Потоци (Rev: 1.1) Любомир Чорбаджиев 1 lchorbadjiev@elsys-bg.org 1 Технологическо училище Електронни системи Технически университет, София 8 май 2007 г. Л. Чорбаджиев (ELSYS) Потоци (Rev: 1.1) 8 май 2007

Подробно

Проф

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

Подробно

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

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

Подробно

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

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

Подробно

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

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

Подробно

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

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

Подробно

5

5 4. ОПЕРАТОР ЗА ИЗБОР НА ДАННИ ОТ ТАБЛИЦА За различните видове справки най-често се използва оператор SELECT. Обикновено резултатът от изпълнението му е таблица. Общ вид на оператора 1 : [ DISTINCT ]

Подробно

Лабораторно упражнение 4 Тема : Реализиране на линейни програми.. I. Цел на лабораторното упражнение Аритметични и логически операции в програмният ез

Лабораторно упражнение 4 Тема : Реализиране на линейни програми.. I. Цел на лабораторното упражнение Аритметични и логически операции в програмният ез Лабораторно упражнение 4 Тема : Реализиране на линейни програми.. I. Цел на лабораторното упражнение Аритметични и логически операции в програмният език С. Реализиране на линейни програми. Математически

Подробно

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА ЦЕНТЪР ЗА КОНТРОЛ И ОЦЕНКА НА КАЧЕСТВОТО НА УЧИЛИЩНОТО ОБРАЗОВАНИЕ УВАЖАЕМИ УЧЕНИЦИ, МАТЕМАТИКА 7. КЛАС 20 МАЙ

МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА ЦЕНТЪР ЗА КОНТРОЛ И ОЦЕНКА НА КАЧЕСТВОТО НА УЧИЛИЩНОТО ОБРАЗОВАНИЕ УВАЖАЕМИ УЧЕНИЦИ, МАТЕМАТИКА 7. КЛАС 20 МАЙ МИНИСТЕРСТВО НА ОБРАЗОВАНИЕТО И НАУКАТА ЦЕНТЪР ЗА КОНТРОЛ И ОЦЕНКА НА КАЧЕСТВОТО НА УЧИЛИЩНОТО ОБРАЗОВАНИЕ УВАЖАЕМИ УЧЕНИЦИ, МАТЕМАТИКА 7. КЛАС МАЙ 1 г. ПЪРВИ МОДУЛ Вариант 1 Време за работа минути. ПОЖЕЛАВАМЕ

Подробно

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

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев (от гледна точка на производителността) Съдържание 1. Видове транслатори 2.Фази по време на компилация 3. Оптимизационна фаза

Подробно

Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от п

Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от п Управление на перална машина с размита логика Пералните машини в наши дни са обикновен уред в дома. Най-голяма изгода, която потребителя получава от пералната машина е, че имат почистване, центрофугиране

Подробно

Slide 1

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

Подробно

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

Анализ и оптимизация на софтуерни приложения Анализ и оптимизация на софтуерни приложения Александър Пенев Васил Василев Съдържание 1. Какво е паралелизация? 2. Примери 3. Паралелни алгоритми 4. Синхронизация. Критични секции 5. Проблеми при паралелните

Подробно