Базовые механизмы манипулирования: реляционная алгебра и исчисление. Рассмотрение проектов System R и Ingres. Внутренняя организация современных многопользовательских реляционных СУБД. Методы строения внешней памяти и применяемые структуры данных.
Рассматриваются принципы взаимодействия между клиентскими и серверными частями системы, и, в частности, важность применения протоколов удаленного вызова процедур для обеспечения организации неоднородных организаций "клиент-сервер". Векторная графика описывает изображения с использованием прямых и изогнутых линий, называемых векторами, а также параметров, описывающих цвета и расположение. Например, изображение древесного листа (рисунок 1) описывается точками, через которые проходит линия, создавая тем самым контур листа. В отличие от растровой графики в векторной графике изображение строится с помощью математических описаний объектов, окружностей и линий. Число p в записи уравнения параболы называется параметром параболы; фокус параболы находится в точке (p/2,0), число p - длина отрезка FK (рисунок 2).В процессе выполнения данной курсовой работы я научился: - построение 2 - мерных графиков при помощи растровой и векторной графики;
Введение
Предметом курса являются системы управления базами данных (СУБД). Это очень важная тема, без основательного знакомства с которой в наше время невозможно быть не только квалифицированным программистом, но даже и грамотным пользователем компьютеров.
Заметим, что литературы на русском языке, посвященной тематике СУБД, очень мало. Невозможно порекомендовать одну или несколько книг, содержание которых покрывало бы материал данного курса. К числу лучших относятся книги К. Дейта "Введение в системы баз данных" (Наука, 1980) и "Руководство по реляционной СУБД DB2" (Финансы и статистика, 1988), а также книга Дж. Ульмана "Основы систем баз данных" (Финансы и статистика, 1983). Хотя эти книги несколько устарели (на английском языке вышло уже несколько дополненных изданий), их стоит читать.
Основное назначение данного курса - систематическое введение в идеи и методы, используемые в современных реляционных системах управления базами данных. В курсе не рассматривается какая-либо одна популярная СУБД; излагаемый материал в равной степени относится к любой современной системе. Как показывает опыт, без знания основ баз данных трудно на серьезном уровне работать с конкретными системами, как бы хорошо они не были документированы.
В вводной части курса рассматриваются основные различия между файловыми системами и системами управления базами данных. На основе анализа возможностей современных файловых систем выделяются области приложений, в которых достаточно использовать файлы, а также те, для которых необходимы базы данных. В этой же части курса обсуждаются базовые функции и приводится типовая организация СУБД. В заключении вводной части кратко рассматриваются основные характеристики ранних, дореляционных систем. манипулирование исчисление проект
Вторая часть курса содержит необходимый теоретический базис, на котором основывается дальнейшее изложение. Вводятся основные понятия реляционной модели данных, обсуждаются основные свойства отношений, рассматриваются два базовых механизма манипулирования данными: реляционная алгебра и реляционное исчисление. Далее излагаются принципы нормализации, на которых основан классический подход к проектированию реляционных баз данных. Наконец, описывается более современный подход к проектированию баз данных, основанный на использовании семантических моделей данных.
В третьей части курса обсуждаются два классических примера экспериментальных проектов реляционных СУБД, которые, фактически, служат основой всех современных коммерческих СУБД. Рассматриваются проекты System R и Ingres. Идея состоит в том, чтобы продемонстрировать сбалансированные наборы решений, примененных в этих двух существенно различающихся системах.
Четвертая часть курса посвящается внутренней организации современных многопользовательских реляционных СУБД. Рассматриваются методы организации внешней памяти баз данных и применяемые структуры данных. Вводится понятие транзакции и анализируются известные способы управления асинхронно выполняемыми транзакциями. Обсуждаются потребности в журнализации изменений баз данных и связь алгоритмов журнализации с политикой управления буферами оперативной памяти. Наконец, рассматриваются способы применения журнальной и архивной информации для восстановления баз данных после различных сбоев.
В пятой части курса подробно рассматривается язык реляционных баз данных SQL. Исходные понятия SQL обсуждаются на основе версии языка, разработанной в рамках проекта System R. Затем кратко описывается история SQL после System R и, в частности, международная деятельность по его стандартизации. После этого систематически излагается наиболее распространенный стандарт языка - SQL-89. Обсуждаются способы использования SQL при программировании прикладных систем. Пятая часть курса завершается рассмотрением наиболее важных свойств, появившихся в последнем стандарте языка SQL-92.
Шестая часть курса посвящена проблемам, которые решаются в компиляторах языка SQL. Эти проблемы концентрируются вокруг необходимости получения эффективных программ, выполняющих операторы, которые изначально формулируются на декларативном языке SQL. Для решения проблем в компиляторах SQL приходится применять разнообразные оптимизирующие приемы, знание которых помогает понять работу любой конкретной системы.
В седьмой части курса рассматривается применение архитектуры "клиент-сервер" в современных СУБД. Рассматриваются принципы взаимодействия между клиентскими и серверными частями системы, и, в частности, важность применения протоколов удаленного вызова процедур для обеспечения организации неоднородных организаций "клиент-сервер". Обсуждаются типичное разделение функций между клиентами и серверами и следующие из этого требования к аппаратным возможностям.
В восьмой части рассматриваются специфические проблемы распределенных баз данных. Анализируются категории распределенных систем, вопросы именования, администрирования, поддержания надежности и доступности данных, особенности управления транзакциями и компиляции запросов.
Наконец, завершающая курс девятая часть посвящена направлениям и состоянию исследовательских работ в области баз данных. Рассматриваются проекты и исследования, относящиеся к так называемым системам баз данных следующего поколения; основные принципы организации систем объектно-ориентированных баз данных; системы баз данных, основанные на правилах, включая активные и дедуктивные базы данных.
1. Отображение векторных изображений
1.1 Векторная графика
Векторная графика описывает изображения с использованием прямых и изогнутых линий, называемых векторами, а также параметров, описывающих цвета и расположение. Например, изображение древесного листа (рисунок 1) описывается точками, через которые проходит линия, создавая тем самым контур листа. Цвет листа задается цветом контура и области внутри этого контура.
IMG_fa88bed1-c153-4b95-82fd-91014c88f181
Рисунок 1
В отличие от растровой графики в векторной графике изображение строится с помощью математических описаний объектов, окружностей и линий. Хотя на первый взгляд это может показаться сложнее, чем использование растровых массивов, но для некоторых видов изображений использование математических описаний является более простым способом.
Ключевым моментом векторной графики является то, что она использует комбинацию компьютерных команд и математических формул для объекта. Это позволяет компьютерным устройствам вычислять и помещать в нужном месте реальные точки при рисовании этих объектов. Такая особенность векторной графики дает ей ряд преимуществ перед растровой графикой, но в тоже время является причиной ее недостатков.
Векторную графику часто называют объектно-ориентированной графикой или чертежной графикой. Простые объекты, такие как окружности, линии, сферы, кубы и тому подобное называется примитивами, и используются при создании более сложных объектов. В векторной графике объекты создаются путем комбинации различных объектов.
Для создания векторных рисунков необходимо использовать один из многочисленных иллюстрационных пакетов. Достоинство векторной графики в том, что описание является простым и занимает мало памяти компьютера. Однако недостатком является то, что детальный векторный объект может оказаться слишком сложным, он может напечататься не в том виде, в каком ожидает пользователь или не напечатается вообще, если принтер неправильно интерпретирует или не понимает векторные команды.
При редактировании элементов векторной графики изменяются параметры прямых и изогнутых линий, описывающих форму этих элементов. Можно переносить элементы, менять их размер, форму и цвет, но это не отразится на качестве их визуального представления. Векторная графика не зависит от разрешения, т.е. может быть показана в разнообразных выходных устройствах с различным разрешением без потери качества.
Векторное представление заключается в описании элементов изображения математическими кривыми с указанием их цветов и наполняемости.
Еще одно преимущество - качественное масштабирование в любую сторону. Увеличение или уменьшение объектов производится увеличением или уменьшением соответствующих коэффициентов в математических формулах. К сожалению, векторный формат становится невыгодным при передаче изображений с большим количеством оттенков или мелких деталей (например, фотографий). Ведь каждый мельчайший блик в этом случае будет представляться не совокупностью одноцветных точек, а сложнейшей математической формулой или совокупностью графических примитивов, каждый из которых, является формулой. Это приводит к утяжелению файла. Кроме того, перевод изображения из растрового в векторный формат (например, программой Adobe Strime Line или Corel OCR-TRACE) приводит к наследованию последним невозможности корректного масштабирования в большую сторону. От увеличения линейных размеров количество деталей или оттенков на единицу площади больше не становится. Это ограничение накладывается разрешением вводных устройств.
Основным логическим элементом векторной графики является геометрический объект. В качестве объекта принимаются простые геометрические фигуры (так называемые примитивы - прямоугольник, окружность, эллипс, линия), составные фигуры или фигуры, построенные из примитивов, цветовые заливки, в том числе градиенты.
Важным объектом векторной графики является сплайн. Сплайн - это кривая, посредством которой описывается та или иная геометрическая фигура. На сплайнах построены современные шрифты TRYETYPE и POSTSCRIPT.
Объекты векторной графики легко трансформируются и модифицируются, что не оказывает практически никакого влияния на качество изображения. Масштабирование, поворот, искривление могут быть сведены к паретройке элементарных преобразований над векторами.
Если в растровой графике базовым элементом изображения является точка, то в векторной графике - линия. Линия описывается математически как единый объект, и потому объем данных для отображения объекта средствами векторной графики существенно меньше, чем в растровой графике.
Линия - элементарный объект векторной графики. Как и любой объект, линия обладает свойствами: формой (прямая, кривая), толщиной, цветом, начертанием (сплошная, пунктирная). Замкнутые линии приобретают свойство заполнения. Охватываемое ими пространство может быть заполнено другими объектами (текстуры, карты) или выбранным цветом. Простейшая незамкнутая линия ограничена двумя точками, именуемыми узлами. Узлы также имеют свойства, параметры которых влияют на форму конца линии и характер сопряжения с другими объектами. Все прочие объекты векторной графики составляются из линий. Например, куб можно составить из шести связанных прямоугольников, каждый из которых, в свою очередь, образован четырьмя связанными линиями [6].
1.2 Парабола
Парабола - одно из конических сечений. Эту кривую можно определить как фигуру, состоящую из всех тех точек М плоскости, расстояние каждой из которых до заданной точки F, называемой фокусом параболы, равно ее расстоянию до заданной прямой l, называемой директрисой параболы (рисунок 2). Ближайшая к директрисе точка параболы называется вершиной параболы; прямая, проходящая через фокус перпендикулярно директрисе, - это ось симметрии параболы. Ее называют просто осью параболы.
В геометрии принято записывать уравнение параболы в системе координат, осью абсцисс которой является ось параболы, а осью ординат - перпендикулярная ей прямая, проходящая через вершину параболы. Такое уравнение имеет вид
IMG_d6ba1d65-47a8-4b7f-a353-fdb9e7a475f2
Число p в записи уравнения параболы называется параметром параболы; фокус параболы находится в точке (p/2,0), число p - длина отрезка FK (рисунок 2).
IMG_f454ea02-a923-40ad-a6ab-c36321314a6d
Рисунок 2
В математическом анализе принята другая запись уравнения параболы:
IMG_1f98bb2a-b551-4a0c-93a3-88a375573d44 (полная форма
IMG_3a774c66-b026-45df-a7d6-5200b0a708da ), т.е. ось параболы выбрана за ось ординат. Параболой же будет и график любого квадратного трехчлена.
Для построения параболы в векторном виде необходимо задать параметры a,b,c. Считаем дискриминант
IMG_96c03f67-0f39-4028-b1e1-465d1ea41aee . Считаем точки основание параболы
Гипербола - это плоская кривая второго порядка, которая состоит из двух отдельных кривых, которые не пересекаются. Формула гиперболы
IMG_d9c23391-c532-4d2f-a63b-f5758a540bfe , при условии, что k ? 0. То есть вершины гиперболы стремятся к нолю, но никогда не пересекаются с ним.
IMG_1fa96310-a3d9-4fe2-9bfa-a1fc18d7ae1a
Основные свойства: - гиперболы состоит из двух отдельных кривых, которые называются ветвями;
- ближайшие друг к другу точки двух ветвей гиперболы называются вершинами;
- кратчайшее расстояние между двумя ветвями гиперболы называются большой осью гиперболы;
- середина большой оси называется центром гиперболы;
- расстояние от центра гиперболы до одной из вершин называется большой полуосью гиперболы. Обычно обозначается а;
- расстояние от центра гиперболы до одного из фокусов называется фокальным расстоянием. Обычно называется с;
- оба фокуса гиперболы лежат на продолжении большой оси на одинаковом расстоянии от центра гиперболы. Прямая, содержащая большую ось гиперболы, называется действительной.
- прямая, перпендикулярная действительной оси и проходящая через ее центр, называется мнимой или сопряженной осью гиперболы;
- отрезок между фокусом гиперболы и гиперболой, перпендикулярный к ее действительной оси, называется фокальным параметром;
- расстояние от фокуса до асимптоты гиперболы называеся прицельным параметром. Обычно обозначается b.
Функция задается уравнением:
IMG_1967fa9f-c2fa-4b27-b110-8e0c1aff7a2e
Общитывается 2 лимита:
IMG_f8c1d72e-838f-4054-bbb0-3b65150f4eb0
Изображение гиперболы отображено на рисунке 4.
IMG_272ec945-e6ee-4fc4-8be8-50d7031f409c
Рисунок 4
2. Отображение растровых изображений
2.1 Растровая графика
Растровое изображение - представляется в виде сетки или растра, ячейки, которые называются пикселями. Любой растровый графический объект воспринимается программой как набор окрашенных пикселей. Поэтому при обработке растровых изображений редактируются не конкретные объекты, а составляющие их группы пикселя. Растровые картинки очень чувствительны к масштабированию. Увеличивая изображение можно невооруженным глазом увидеть растр.
Растровые графические редакторы являются наилучшим средством представления тоновых оригиналов, например, таких как фотографии, поскольку растровые изображения обеспечивают довольно высокую точность передачи градаций цветов и полутонов.
Однако для представления растровых изображений всегда используется фиксированное число пикселей, значит, качество зависит от разрешающей способности оборудования. Цветовые характеристики растровых изображений приводят к огромным размерам графических файлов и искажению при масштабировании. Это означает, что обработка такого изображения, например изменение его размера или печать с более высоким разрешением, может привести к потере мелких деталей, зернистости и неровным границам объектов.
Среди растровых графических объектов есть довольно простые в применении, такие, как Paint, EAKIDS, работа с которыми не требует особенной подготовки, и более сложные, мощные профессиональные программы, НАПРИМЕРADOBE Photoshop, CORELPHOTO-Paint.
Пиксель - комбинированный термин, обозначающий элемент изображения, являющийся наименьшим элементом экрана монитора. Двумерная графика в которой происходит в одной плоскости. Например пользовательский интерфейс.
2.2 Алгоритм Брезенхема
Алгоритм Брезенхема был первоначально разработан для цифровых графопостроителей, но в равной степени подходит для использования растровыми устройствами с ЭЛТ. Алгоритм выбирает оптимальные растровые координаты для представления отрезка. В процессе работы одна из координат - либо x, либо y (в зависимости от углового коэффициента) - изменяется на единицу. Изменение другой координаты (на 0 или 1) зависит от расстояния между действительным положением отрезка и ближайшими координатами сетки. Такое расстояние мы назовем ошибкой.
IMG_5742d015-f3e9-4f1a-a87b-ad819fdce1f2
Рисунок 5
Алгоритм построен так, что требуется проверить лишь знак этой ошибки. На рисунке 5 это иллюстрируется для отрезка в первом октанте, т.е. для отрезка с угловым коэффициентом, лежащим в диапазоне от 0 до 1. Из рисунка можно заметить, что если угловой коэффициент отрезка из точки (0,0) больше, чем 1/2, то пересечение с прямой x = 1 будет расположено ближе к прямой y = 1, чем к прямой y = 0. Следовательно, точка растра (1,1) лучше аппроксимирует ход отрезка, чем точка (1,0). Если угловой коэффициент меньше 1/2, то верно обратное. Для углового коэффициента, равного 1/2, нет какого либо предпочтительного выбора. В данном случае алгоритм выбирает точку (1,1).
Не все отрезки проходят через точки растра. Подобная ситуация иллюстрируется на рисунке 6, где отрезок с тангенсом угла наклона 3/8 сначала походит через точку растра (0,0) и последовательно пересекает три пикселя. Также иллюстрируется вычисление ошибки при представлении отрезка дискретными пикселями.
IMG_db3caaa7-18c2-4185-ac80-4b342602a1d3
Рисунок 6
Так как желательно проверять только знак ошибки, то она первоначально устанавливается равной -1/2. Таким образом, если угловой коэффициент отрезка больше или равен 1/2, то величина ошибки в следующей точке растра с координатами (1,0) может быть вычислена как e = e m, где m - угловой коэффициент. В нашем случае при начальном значении ошибки -1/2: e = 1/2 3/8 = -1/8
Так как е отрицательно, отрезок пройдет ниже середины пиксела. Следовательно, пиксел на том же самом горизонтальном уровне лучше аппроксимирует положение отрезка, поэтому у не увеличивается. Аналогично вычисляем ошибку e = -1/8 3/8 = ј в следующей точке растра (2,0). Теперь е положительно, значит отрезок пройдет выше средней точки. Растровый элемент (2,1) со следующей по величине координатой у лучше аппроксимирует положение отрезка. Следовательно у увеличивается на 1. Прежде чем рассматривать следующий пиксел, необходимо откорректировать ошибку вычитанием из нее 1. Имеем e = 1/4 - 1 = -3/4
Заметим, что пересечение вертикальной прямой x = 2 с заданным отрезком лежит на 1/4 ниже прямой у = 1. Если же перенести отрезок 1/2 вниз, мы получим как раз величину -3/4. Продолжение вычислений для следующего пиксела дает e = -3/4 3/8 = -3/8
Так как e отрицательно, то y не увеличивается. Из всего сказанного следует, что ошибка - это интервал, отсекаемый по оси y рассматриваемым отрезком в каждом растровом элементе (относительно -1/2).
2.3 Парабола
Для реализации параболы в растровом виде используется алгоритм Брезенхема в координатах.
IMG_af8ce4b8-3e24-41e3-8ce6-d15bb166e2d5
1) Задаются стартовые данные. X,Y=0 - основание параболы. ?=0 коэффициент ошибки. Н=20 высота параболы. I=0 порядковый номер для сохранения координаты точки в матрицу.
2) Запускается цикл обсчета точек.
Точка правой ветви:
IMG_b8a23366-ce1d-4fd8-9691-4d6f6b5dd480 Точка левой ветви:
IMG_ded737f9-8aa1-4118-a03c-4dadb52f7d25 В зависимости от выполнение 1 из 2 логических условий идет пересчет следующей пары точек и коэффициента ошибки. График растровой параболы отображен на рисунке 7.
IMG_e09e559b-7ff7-4103-a8e7-cac3f7ce8de9
Рисунок 7
2.4 Гипербола
Для отображения гиперболы в растровой графике используем алгоритм Брезенхема: 1) Задаем начальные данные
IMG_0e9deb7d-727f-46e1-a46d-c29d8d63d497 (
IMG_e285e497-3a2c-406b-9109-e433103dad08 ). Х0 и У0 кардинаты фокуса. А, В растояние от фокуса до вершин дуг гиперблы.
2) Абсчет стартовых араметров:
IMG_1fa23429-f684-4e91-b5ab-4d1375cd2fa1
3) Запускаем цикл:
IMG_d1286f48-f47c-46f7-9927-3b0280d255e3 . В котором обсчитываем точки гиперболы:
IMG_fc226bbe-3670-42de-8912-156103e985b3 ;
IMG_2a433c35-c8e1-47c0-a589-9d0c6ed4afe5 ;
IMG_08f4789e-c149-4dfc-9c9b-c4f7d748830d ;
IMG_d131ff62-27e2-426e-ae02-accede3e0032 . Делаем проверку по 2 логическим условиям в зависимости от рзультата делаем дальнейший обсчет:
IMG_0acfe31f-9f1c-44e7-88fc-befa6c3faedd
Изображение гиперболы в растровой графике приведено на рисунке 8.
IMG_55b9aa0e-0670-4bb6-b5d5-dfb2f946cd8f
IMG_2d45e2bc-63d7-4197-8e5d-736831587cc2
Рисунок 8
3. Математические модели поверхности
3.1 Тела Платона
Тетраэдр-четырехгранник, все грани которого треугольники, т.е. треугольная пирамида; правильный тетраэдр ограничен четырьмя равносторонними треугольниками; один из пяти правильных многоугольников (рисунок 9).
Куб или правильный гексаэдр - правильная четырехугольная призма с равными ребрами, ограниченная шестью квадратами (рисунок 9).
Октаэдр-восьмигранник; тело, ограниченное восемью треугольниками; правильный октаэдр ограничен восемью равносторонними треугольниками; один из пяти правильных многогранников (рисунок 9).
IMG_1650696a-6488-4c28-aaa7-d751562d4c21
Рисунок 9: а -Тетраэдр, б - Куб, в - Октаэдр, г - Додекаэдр, д - Икосаэдр.
Додекаэдр-двенадцатигранник, тело, ограниченное двенадцатью многоугольниками; правильный пятиугольник; один из пяти правильных многогранников (рисунок 9).
Икосаэдр-двадцатигранник, тело, ограниченное двадцатью многоугольниками; правильный икосаэдр ограничен двадцатью равносторонними треугольниками; один из пяти правильных многогранников (рисунок 9).
Куб и октаэдр дуальны, т.е. получаются друг из друга, если центры тяжести граней одного принять за вершины другого и обратно. Аналогично даны додекаэдр и икосаэдр. Тетраэдр дуален сам себе. Правильный додекаэдр получается из куба построением “крыш” на его гранях (способ Евклида), вершинами тетраэдра являются любые четыре вершины куба, попарно не смежные по ребру. Так получаются из куба все остальные правильные многогранники. Сам факт существования всего пяти действительно правильных многогранников удивителен - ведь правильных многоугольников на плоскости бесконечно много.
Все правильные многогранники были известны еще в Древней Греции, и им посвящена заключительная, XII книга знаменитых начал Евклида. Эти многогранники часто называют также платоновыми телами в идеалистической картине мира, данной великим древнегреческим мыслителем Платоном. Четыре из них олицетворяли четыре стихии: тетраэдр-огонь, куб-землю, икосаэдр-воду и октаэдр-воздух; пятый же многогранник, додекаэдр, символизировал все мироздание его по латыни стали называть quinta essentia (“пятая сущность”). Придумать правильный тетраэдр, куб, октаэдр, по-видимому, было не трудно, тем более что эти формы имеют природные кристаллы, например: куб-монокристалл поваренной соли (NACL), октаэдр-монокристалл алюмокалиевых квасцов ((KALSO4)2*12H2O). Существует предположение, что форму додекаэдра древние греки получили, рассматривая кристаллы пирита (сернистого колчедана FES). Имея же додекаэдр нетрудно построить и икосаэдр: его вершинами будут центры двенадцати граней додекаэдра [1].
Свойства Додекамэдр - двенадцатигранник, составленный из двенадцати правильных пятиугольников. Каждая вершина додекаэдра является вершиной трех правильных пятиугольников. Додекаэдр имеет 12 граней, 30 ребер и 20 вершин. Сумма плоских углов при каждой из 20 вершин равна 324° [2].
3.2 Додекаэдр
Задаем константу
IMG_60099905-c33a-40fd-b069-66552931a9d5 , и радиус вписанной окружности
IMG_21a72d8c-a2c4-439a-958d-6149ccd43afb . Формируем шаблон матрицы для додекаэдра
IMG_38590ccf-1c2c-45e7-8b9e-1a3e43006f81
Задаем матрицу вершин идеального додекаэдра
IMG_67d4868e-1c40-448a-a7dc-f8a33a642864
На ее основе подсчитываем координаты додекаэдра
IMG_007d5b4f-4fc4-4aa1-b2d6-1dd26dd19f1f
Задаем порядок отображения ребер
IMG_842ffd16-b7da-4790-8b92-5b2661e04fed
Формируем додекаэдр
IMG_3033b94b-a2b4-4fd9-b993-e0dd78360cec
Изображение додекаэдра видно на рисунке 10.
IMG_725ccb63-32f9-45ac-b90d-0631136983f8
Рисунок 10
Вывод
В процессе выполнения данной курсовой работы я научился: - построение 2 - мерных графиков при помощи растровой и векторной графики;
- формированию плоскостей и 3 - мерных фигур в среде MATHCAD.
А также научился формировать отчетные работы.
Список литературы
1. Макаров Е. Г., «Mathcad. Учебный курс», Питер, 2009
2.
3. Никулин Е. А. «Компьютерная геометрия и алгоритмы машинной графики», Петербург, 2005
4.
5. Ильин В. А., «Аналитическая геометрия», Петербург, 1999
6. http://www.studfiles.ru
Размещено на .ru
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы