КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Курс лекций. Объектно-ориентированные СУБД т объектно-реалиционные тоже посмотрите сами)
ПРОГРАММИРОВАНИЕ Объектно-ориентированные СУБД т объектно-реалиционные тоже посмотрите сами) Недостатки ранних СУБД Достоинства и недостатки ранних СУБД Ограничения целостности. Как и в иерархической модели обеспечивается только поддержание целостности по ссылкам (владелец отношения - член отношения). Достоинства ранних СУБД: · развитые средства управления данными во внешней памяти на низком уровне; · возможность построения вручную эффективных прикладных систем; · возможность экономии памяти за счет разделения подобъектов (в сетевых системах) · сложность использования; · высокий уровень требований к знаниям о физической организации БД; · зависимость прикладных систем от физической организации БД; · перегруженность логики прикладных систем деталями организации доступа к БД. Как иерархическая, так и сетевая модель данных предполагает наличие высококвалифицированных программистов. И даже в таких случаях реализация пользовательских запросов часто затягивается на длительный срок.
МОСКВА 2011 ББК 32.973.26-018я73 А 65 УДК 004.42(075)
Рецензенты: Сетуха А.В., Делицин А.Л.
А 65 Андреева Л.П. Программирование. Курс лекций: Учебное пособие / Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Московский государственный технический университет радиотехники, электроники и автоматики» - М., 2011.- 152 с.
В учебном пособии представлен теоретический материал по программированию на языке С++. Пособие предназначено для использования в учебном процессе студентами, обучающимися по направлению 080500 «Бизнес-информатика».
Табл. 9. Ил. 8. Библиогр.:6 назв.
Печатается по решению редакционно-издательского совета университета
ISBN © Л.П. Андреева, 2011
© МИРЭА, 2011 Введение
Учебное пособие представляет собой конспект лекций по языку программирования С++. Пособие предназначено для студентов начинающих изучать язык С++, но может быть полезным и более опытным в программировании читателям. Цель пособия не только обучить студентов языку С++, но и познакомить студентов с технологией разработки программ. Все теоретические материалы сопровождаются примерами законченных программ. Пособие содержит десять разделов. В разделе «Знакомство с языком С++» рассматриваются элементарные конструкции языка и структура простой программы на языке С++. В разделе «Основные типы данных» рассматриваются встроенные в язык типы данных и их использование для записи выражений. Раздел «Структурное программирование» посвящен изучению синтаксиса и семантики операторов С++. В разделе приводятся программы, реализующие линейные, разветвляющиеся и циклические алгоритмы. В разделах «Массивы», «Строки» и «Структуры и объединения» рассматривается использование составных типов данных в программировании. В разделе «Указатели» изучаются операции над указателями и их использование для работы с динамическими массивами. Материал этого раздела является основой для программной реализации динамических структур данных. Раздел «Модульное программирование» посвящен нисходящей разработке программ и функциям языка С++, знание которых необходимо для создания больших программ. В разделе «Работа с файлами» описываются средства языка С++ для работы с данными на внешних носителях. Приводится большое количество программ для работы с текстовыми и двоичными файлами. В разделе «Данные с динамической структурой» изучаются динамические структуры данных: линейные списки, деревья и графы. 1. Знакомство с языком С++
1.1. Элементы языка программирования
Для программирования на языке высокого уровня надо изучить правила построения языковых конструкций (синтаксис языка) и правила их использования (семантику языка). Изучение этих правил начнем с разбора простой программы на языке С++. Пример программы на языке С++ для вычисления математического выражения z=cos(x)+у2: //Вычисление выражения #include <iostream.h> #include <conio.h> #include <math.h> void main() { float x, y, z; cout<<”x, y? ”; cin>>x>>y; z=cos(x)+y*y; cout<<"z="<<z; getch(); } Комментарии к программе. 1 строка - это однострочный комментарий. Комментарии используются для документирования программы и облегчения чтения ее исходного кода. Однострочный комментарий должен размещаться в одной строке и начинаться двумя символами \. Комментарии могут быть многострочными. Такие комментарии заключаются в пары символов /* */, например: /* Это многострочный комментарий */). 2-4 строки – это директивы препроцессора. Директивы препроцессора записывают в отдельных строках. Они начинаются с символа #. До символа # могут быть пробелы. Директива препроцессора #include применяется для включения в программу копии указанного в ней файла. В примере директивы #include включают в программу заголовочные файлы стандартных библиотек: потокового ввода-вывода (iostream.h), математических функций (math.h) и консольного ввода-вывода (conio.h). 5 строка – это заголовок функции main. Функция с именем main должна обязательно содержаться в консольном приложении. Программа на С++ может содержать несколько функций.Выполнение программы всегда начинается с первого оператора функции main. Строки 6, 13 начинают и заканчивают тело функции. Тело функции заключается в фигурные скобки. Строка 7 – содержит объявление вещественных переменных с именами х, y и z. Переменные x и y используются в программе для хранения входных данных, а z – для хранения результата вычисления выражения. В языке С++ все переменные перед их использованием в программе должны быть объявлены. Объявления переменных могут находиться: вне функций (глобальные объявления), в определениях функций и даже внутри составного оператора и оператора цикла. Строка 8 – содержит оператор-выражение, который выводит на экран текст x, y?. Выводимый текст заключается в кавычки. Оператор посылает поток символов x, y? объекту cout, который связан с экраном. Операция << называется «поместить в поток вывода». Строка 9 – содержит оператор-выражение, который вводит с клавиатуры два вещественных числа и помещает их в переменные х и у. Операция >> называется «взять (получить) из потока ввода». cin – имя входного потока, связанного с клавиатурой. Строка 10 – содержит оператор-выражение, который вычисляет выражение и присваивает результат переменной z. Строка 11 – содержит оператор-выражение, который выводит значение переменной z с поясняющим текстом на экран. Строка 12 – содержит оператор, в котором вызывается функция getch из стандартной библиотеки conio для задержки результатов программы на экране. Функция getch ждет нажатия пользователем программы любой клавиши на клавиатуре. Основные правила записи программы: 1. Программа на языке С++ состоит из операторов, объявлений, определений функций, директив препроцессора и комментариев. 2. Все переменные должны быть объявлены до их первого использования в операторах. 3. Программа записывается с помощью символов, входящих в алфавит языка С++. Язык С++ является чувствительным к регистру: строчные и прописные буквы в программе различаются. Служебные слова языка и имена функций из стандартных библиотек пишутся строчными буквами, имена для переменных могут содержать как строчные, так и прописные буквы. 4. Программа записывается в свободном формате: вся программа может быть записана в одну строку, а один оператор (или объявление) может быть записан в нескольких строках. Компилятор распознает конец оператора или объявления по символу; (точка с запятой), котрым заканчивается каждый оператор и каждое объявление. Чтобы программа лучше читалась, желательно ее записывать структурно: размещать каждый оператор и каждое объявление с новой строки, делать отступы в 3-4 пробела для вложенных операторов.
1.2. Алфавит языка
Алфавит – это допустимый набор символов, используемых при записи программы. А лфавит языка С++ включает: · латинские буквы, · цифры, · специальные знаки: · + - * % / · < > = · () {} [] ·.,!? ‘ “:; · | \ & # ~ ^ _ · пробельные символы: пробел, табуляция, переход на новую строку. 1.3. Лексемы
Лексемы – последовательность символов алфавита, имеющая для компилятора определенный смысл. Лексемы строятся из символов алфавита языка по определенным в каждом языке правилам. В программах, написанных на языке С++, можно выделить следующие лексемы: идентификаторы, ключевые слова, знаки операций, разделители, константы. Идентификатор – это имя программного объекта. Идентификатор может содержать буквы, цифры и символы подчеркивания. Первым символом идентификатора может быть буква или символ подчеркивания. Для улучшения читаемости программы следует задавать осмысленные идентификаторы. Идентификаторы не должен совпадать с ключевыми словами языка С++. Примеры правильной записи идентификаторов: a1, max, file_name. Ключевые слова – зарезервированные слова языка, которые можно использовать только в определенных конструкциях языка. Список основных ключевых слов языка С++ приведен в табл. 1.
Таблица 1 Список ключевых слов С++
Знак операции – это один или более символов алфавита, определяющих действия над операндами. Примеры знаков операций: + <=. Разделители – это скобки, знаки препинания (запятая, точка с запятой), пробельные символы, к которым относятся пробел, символ табуляции и символ перехода на новую строку. Константы – это неизменяемые программные объекты. В табл. 2 приведены примеры констант разных типов.
Таблица 2 Константы языка С++
1.4. Концепция данных Язык С++ является типизированным языком. Это означает, что каждая переменная, константа или результат вычисления выражения программы принадлежат к одному из определенных в языке типов данных. Тип данных определяет: · множество допустимых значений, которые могут принимать данные; · допустимые операции над данным; · формат хранения данных в памяти компьютера. Принадлежность переменных к определенному типу данных определяется в обязательном объявлении каждой переменной программы до ее использования. Пример объявления вещественной переменной: float x; Принадлежность константы к определенному типу задается ее записью. Например, в операторе-выражении х=2; компилятор отнесет константу 2 к целому типу данных, так как в записи константы отсутствует точка. Тип значения вычисляемого выражения определяется правилами языка для типа выражений, которые будут рассмотрены позже.
2. Основные типы данных
Все типы данных С++ можно разделить на два класса: класс основных типов и класс производных типов. К основным типам данных относятся целый, вещественный, вещественный с двойной точностью, символьный, логический и тип void. Производные типы данных строятся на их основе. К производным типам данных относятся массивы, структуры, объединения, классы, функции, указатели и перечисления.
2.1. Обьявление переменных Переменная – это программный объект, который предназначен для хранения данных. Переменная имеет имя (идентификатор) и значение, которое может изменяться при работе программы. Имя переменная получает при объявлении. Объявление переменной должно располагаться в программе до ее первого использования. При объявлении переменной с ее именем связывается область оперативной памяти, в которой будет храниться значение переменной. Синтаксис объявления переменных основных типов: Тип список_имен_переменных; Тип переменных задается одним из ключевых слов: int, float, double, char, bool. Перед типом переменных могут использоваться модификаторы типа: short, long, signed, unsigned. Модификаторы short и long изменяют размер оперативной памяти, выделяемую переменной для хранения данных в соответствии с ее типом, а модификаторы signed и unsigned изменяют способ использования старшего бита. При использовании модификатора unsigned старший бит рассматривается как часть кода числа. Диапазон значений и размер памяти для данных основных типов приведенны в табл. 3. Таблица 3
Дата добавления: 2014-01-06; Просмотров: 358; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |