Моделирование системы геометрических фигур

Объектно-ориентированные возможности языка C++. Моделирование системы геометрических фигур, методика проектирования программных комплексов. Анализ предметной области, технология создания объектной модели. Упрощение классов при использовании наследования.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 22.09.2011
Размер файла 668,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Министерство образования и науки республики Казахстан

КУРСОВАЯ РАБОТА

Моделирование системы геометрических фигур

Усть-Каменогорск 2009

Оглавление

Введение

Глава 1. Анализ и описание предметной области проекта

Глава 2. Разработка объектной модели

2.1 Определение объектов и классов

2.2 Подготовка словаря данных

2.3 Определение атрибутов объектов

2.4 Определение методов классов

2.5 Упрощение классов при использовании наследования и графическое изображение объектной модели

Глава 3. Реализация объектной модели на языке программирования С++

Заключение

Библиографический список

Глоссарий

Приложения

Введение

Темой данной курсовой работы является изучение объектно-ориентированных возможностей языка C++ (номер варианта 29). Предметная область курсовой работы согласно варианту - моделирование системы геометрических фигур.

Основной целью этой курсовой работы является практическое освоение методики проектирования программных комплексов на базе объектно-ориентированного подхода.

Модель содержит не все признаки и свойства представляемого ею предмета (понятия), а только те, которые существенны для разрабатываемой программной системы. Тем самым модель “беднее”, а, следовательно, проще представляемого ею предмета (понятия). Но главное даже не в этом, а в том, что модель есть формальная конструкция: формальный характер моделей позволяет определить формальные зависимости между ними и формальные операции над ними. Это упрощает как разработку и изучение моделей, так и их реализацию на компьютере. В частности, формальный характер моделей позволяет получить формальную модель разрабатываемой программной системы как композицию формальных моделей ее компонентов. Таким образом, объектно-ориентированный подход помогает справиться с такими сложными проблемами, как:

- уменьшение сложности программного обеспечения;

- повышение надежности программного обеспечения;

- обеспечение возможности модификации отдельных компонентов программного обеспечения без изменения остальных его компонентов;

- обеспечение возможности повторного использования отдельных компонентов программного обеспечения.

Систематическое применение объектно-ориентированного подхода позволяет разрабатывать хорошо структурированные, надежные в эксплуатации, достаточно просто модифицируемые программные системы.

В методическом приложении были приведены особенности предметной области, рассмотренной в данной работе, - в системе геометрических фигур выделяются компоненты: круг, цилиндр, параллелепипед, прямоугольник. По условию задачи необходимо реализовать объектную модель системы геометрических фигур и написать программу с использованием класса C++, который отражает все многообразие геометрических фигур и наглядно демонстрирует эффективность использования объектно-ориентированной технологии разработки программ.

Глава 1. Анализ и описание предметной области проекта

Выбранная предметная область соответствует теме №29 (Моделирование системы геометрических фигур).

Геометрических фигур огромное множество, поэтому в своем курсовом проекте я не буду использовать все их многообразие. Поэтому в своём курсовом проекте я буду рассматривать только множество плоских фигур подразделяющихся на треугольники, квадраты, прямоугольники, окружности и трапеции. Также особенность всех геометрических фигур заключается в том, что все они обладают общими свойствами, а зачастую свойства (в объектно-ориентированном программировании их называют атрибутами) даже совпадают. Все справочники на бумажных носителях очень неудобны в плане того что неудобно перелистывать страницы к тому же очень много лишнего материала, который нужно перерабатывать. Предложенный курсовой проект представляет собой мини-базу данных, в которой можно получить практически всю информацию, о какой либо геометрической фигуре несколькими щелчками. Откроется небольшое окно, в котором будет отображена краткая, но очень важная информация по объекту.

В конечном продукте вам не придется выбирать типы указанные ниже на рисунке 1. Это сделано для облегчения работы с конечным продуктом и написания непосредственно текста программы.

Схема классификации геометрических фигур представлена на рисунке.

Рис. 1

Глава 2. Разработка объектной модели

2.1 Определение объектов и классов

В данном курсовом проекте созданы классы, соответствующие названиям геометрических фигур, а именно класс треугольник(class triangle), содержащий в себе такие объекты как прямоугольный, правильный и равнобедренный (pruamougolnii, pravilnii, ravnobedrennii). А также классы прямоугольник (class pryamougolnic), квадрат(kvadrat), параллелограмм и трапеция.

На рисунке 2 - определение класс треугольник и его объектов

Рис. 2

Определение класса прямоугольник

Прямоугольник

сторона_а 1: char = `a'

cторона_b 2: char ='b'

сторона_c 3: char='c'

cторона_d 4: char='d'

void show_pryamougolnic (void)

Рис. 3

Определение класса параллелограмм

Параллелограмм

сторона_а 1: char = `a'

cторона_b 2: char ='b'

сторона_c 3: char='c'

сторна_d 4: char='d'

void show_parallelogram (void)

Рис. 4

Определение класса квадрат

Параллелограмм

сторона_а 1: char = `a'

cторона_b 2: char ='b'

сторона_c 3: char='c'

сторна_d 4: char='d'

void show_kvadrat (void)

Рис. 5

Определение класса трапеция

Параллелограмм

сторона_а 1: char = `a'

cторона_b 2: char ='b'

сторона_c 3: char='c'

сторна_d 4: char='d'

void show_trapecia (void)

Рис 6

2.2 Подготовка словаря данных

Плоская фигура - любая геометрическая фигура, непосредственно расположенная на плоскости

Треугольник - плоская фигура, состоящая из трёх сторон;

Треугольник равнобедренный - треугольник, имеющий две равных стороны;

Треугольник правильный - треугольник, все стороны которого равны;

Треугольник прямоугольник - треугольник, две стороны которого пересекаются под прямым углом;

Прямоугольник - четырехугольник, у которого все углы по 90 градусов, противолежащие стороны равны

Квадрат- все углы по 90 градусов, все стороны равны

Параллелограмм - противолежащие стороны равны

Трапеция - только две из четырёх противолежащих стороны равны

2.3 Определение атрибутов классов и объектов

Всякий треугольник имеет такие параметры как три стороны, высота, формулы площади. Поскольку итогом курсовой работы будет консольное приложение, в котором определена база формул то все атрибуты имеют символьный тип данных. Атрибуты класса треугольник подразделяются на

частные и общедоступные. Такие атрибуты как высота и три стороны не подлежат изменению (в отличие от формул площади и периметра) поэтому в проекте эти атрибуты определены как закрытые (private). Соответственно атрибуты площадь и периметр относятся к общедоступным атрибутам класса треугольник.

Класс квадрат (kvadrat) имеете такие атрибуты как сторона, площадь и периметр: класс прямоугольник имеет две стороны, площадь, периметр:

Площадь, две смежные стороны, высота, периметр- атрибуты класса параллелограмм.

2.4 Определение методов классов и объектов

Методы класса треугольник:

cout <<"tip treugolnica: "<<name <<endl;

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

Класс прямоугольник включает следующие методы:

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

Класс параллелограмм включает следующие методы:

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

Класс квадрат включает следующие методы:

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

Класс трапеция включает следующие методы:

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

Все методы классов треугольник, прямоугольник, трапеция, квадрат, параллелограмм заключены на отображении в консольном приложении необходимых данных. Как видите они практически идентичны

2.5 Упрощение классов при использовании наследования и графическое изображение объектной модели

Анализ атрибутов и методов позволяет построить иерархию наследования (порожденные классы) и объектную модель (рисунок 7).

Рис. 7.Объектная модель системы геометрических фигур

объектный модель геометрический фигура

Глава 3. Реализация объектной модели на языке программирования С++

Реализация прикладной программной системы, спроектированной с помощью объектно-ориентированной методологии, на языке C++ начинается с определения классов, разработанных на этапе проектирования на этом языке. Желательно сохранение имен и, по возможности, других обозначений, введенных на этапе проектирования.

Далее приводим пример реализации на языке C++ класс треугольник (triangle) показанный ниже

class treugolnic{ // объявление класса

private:

char a;

char b;

char c;

char h;

public: // сообщение о том, что элементы класса являются открытыми

char formula_S[100];

char formula_P[20];

char individuals[100];

char name[100];

void show_treugolnic(void) // метод класса{

cout <<"tip treugolnica: "<<name <<endl;

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;}

};

Реализация класса прямоугольник

class pryamougolnic{

private:

char a;

char b;

char h;

public:

char P;

char S;

char individuals[100];

void show_pryamougolnic (void) // метод класса{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;}

}

Реализация класса квадрат:

class kvadrat{

private:

char a;

public:

char P;

char S;

char individuals[100];

void show_kvadrat (void) // метод класса{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;}

}

Реализация класса прямоугольник:

class pryamougolnic{

private:

char a;

char b;

char h;

public:

char P;

char S;

char individuals[100];

void show_pryamougolnic (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

}

Реализация класса трапеция:

class trapecia{

private:

char a;

char b;

char c;

char d;

char h;

public:

char P;

char S;

char individuals[100];

void show_trapecia (void) // метод класса

{cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}};

Реализация класса параллелограмм:

class parallelogramm{

private:

char a;

char b;

public:

char P;

char S;

char individuals[100];

void show_ (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;}

}

В определении класса на языке C++ и атрибуты, и методы называются членами этого класса; их определения могут следовать в тексте определения класса в произвольном порядке. Члены класса могут быть общедоступными (public) или приватными (private); вне класса определен доступ только к его общедоступным членам, а приватные члены доступны только методам своего класса. В классе треугольник атрибуты а, b, c, h, (стороны и высота) являются приватными, а атрибуты S, P (площадь и периметр) - общедоступными;

Порождение объектов

В каждом классе языка C++ могут быть определены специальные методы (один или несколько), обращение к которым приводит к порождению нового объекта этого класса. Такие методы называются конструкторами. Конструкторы могут иметь параметры, что позволяет определить начальное состояние объекта при его порождении. Конструкторы имеют то же имя, что и имя класса, в котором они определены, так что если класс имеет несколько конструкторов, то они должны различаться числом и типом своих параметров. Далее рассмотрим конструктор класса trapecia

trapecia::trapecia (a,b,c,d,S,P)

{

a='a';b='b';c='c',d='d';S='S';P='P';

a=c;b=d;S='a*b*h',P='P';

}

При обращении к этому конструктору из трапеции порождается параллелограмм с изменённой формулой вычисления площади.

В языке Cи++ поддерживается три вида выделения памяти для размещения объектов: в фиксированной глобальной памяти (статическая память, static), в системном стеке (автоматическая память, automatic), в “куче” (динамическая память, dynamtic).

Чтобы разместить объект в статической памяти достаточно либо объявить его вне какой-либо функции, либо при его объявлении указать ключевое слово static. Статическая память выделяется компилятором во время компиляции программы и не меняется во время ее выполнения. Конструктор можно использовать для инициализации объектов, размещаемых в статической памяти (для выделения статической памяти под объект без его инициализации достаточно просто объявить его). Объявление:

main_trapecia = trapecia(0.0, 0.0, 8.5, 11.0)

определяет статический объект main_trapecia, проинициализированный значениями параметров конструктора.

Для удаления объектов можно использовать специальный метод, являющийся одним из членов класса и называемый деструктором. Как и конструктор, он имеет то же имя, что и имя класса, в котором он определен, но первым символом имени деструктора является тильда (~):

trapecia::~trapecia ();

{

// удалить порождённый класс

}

Для освобождения динамической памяти от объектов, которые уже не нужны, используется операция delete, например:

delete trapecia;

Необходимость использования операции delete связана с тем, что в системе Cи++ не производится сборка мусора, и программист должен сам заботиться об освобождении динамической памяти от ненужных объектов, чтобы избежать ее переполнения.

Использование наследования

Наследование является фундаментальной концепцией объектно-ориентированного программирования. Целью наследования является повторное использование уже созданных классов.

Наследование представляет собой способность производного класса наследовать характеристики существующего базового класса.

Возьмём за базовый класс квадрат (kvadrat) и, используя наследование получим из него правильный пятиугольник

Базовый класс:

class kvadrat{

private:

char a;

public:

char P;

char S;

char individuals[100];

void show_kvadrat (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

Теперь появилась задача создать новый класс, например, pyatiugolnic, который отличается от имеющегося наличием дополнительных элементов:

char e; // дополнительная сторона

Порождая класс из уже существующего значительно сокращаются объёмы программного кода, уменьшается время работы программы а так же повышается надёжность.

Для определения данного класса необходимо указать ключевое слово class имя pyatiugolnic, следующее за ним двоеточие и имя родительского класса kvadrat:

class puatiugolnic:public kvadrat {

public:

puatiugolnic(char *, char*);

void show_pyatiugolnic(void);

private:

char e;

};

puatiugolnic::puatiugolnic(char *a): kvadrat(a, S, P)

{

strcpy(pyatiugolnic::char*a, char*a);

}

void puatiugolnic::show_pyatiugolnic()

{

show_kvadrat();

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

Приложение А. Листинг программы

#include <iostream.h>

#include <string.h> // файловый заголовок для работы со строками

class treugolnic{ // объявление класса

private:

char a;

char b;

char c;

char h;

public: // сообщение о том, что элементы класса являются открытыми

char formula_S[100];

char formula_P[20];

char individuals[100];

char name[100];

void show_treugolnic(void) // метод класса

{

cout <<"tip treugolnica: "<<name <<endl;

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl; }

};

class pryamougolnic{

private:

char a;

char b;

char h;

public:

char P;

char S;

char individuals[100];

void show_pryamougolnic (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

}

class trapecia{

private:

char a;

char b;

char c;

char d;

char h;

public:

char P;

char S;

char individuals[100];

void show_trapecia (void) // метод класса

{cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

}

class kvadrat{

private:

char a;

public:

char P;

char S;

char individuals[100];

void show_kvadrat (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

}

class puatiugolnic:public kvadrat {

public:

puatiugolnic(char *, char*);

void show_pyatiugolnic(void);

private:

char e;

};

puatiugolnic::puatiugolnic(char *a): kvadrat(a, S, P)

{

strcpy(pyatiugolnic::char*a, char*a);

}

void puatiugolnic::show_pyatiugolnic()

{

show_kvadrat();

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

class parallelogramm{

private:

char a;

char b;

public:

char P;

char S;

char individuals[100];

void show_ (void) // метод класса

{

cout <<"formuly ploshadi: "<<formula_S <<endl; // вывод необходимых

данных

cout <<"formuly perimetra: "<<formula_P <<endl;

cout <<"osobennosti: "<<individuals <<endl;

}

}

int main()

{ treugolnic pryamougolnii, ravnobedrennii, pravilnii; // объекты класса

strcpy(pryamougolnii.name, "pryamougolnii treugolnic"); //присваивание

значений элементам

strcpy(pryamougolnii.formula_S, "S=0.5*a*b"); //присваивание значений

элементам

strcpy(pryamougolnii.formula_P, "P=a+b+c"); //класса

strcpy(pryamougolnii.individuals, "c^2=a^2+c^2, ^C=90 ");

pryamougolnii.show_treugolnic(); // вывод необходимых данных

strcpy(ravnobedrennii.name, "ravnobedrennii treugolnic");

strcpy(ravnobedrennii.formula_S, "S=0.5*a*b"); //присваивание значений

элементам

strcpy(ravnobedrennii.formula_P, "P=2a+c"); //класса

strcpy(ravnobedrennii.individuals, "a=b");

ravnobedrennii.show_treugolnic(); // вывод необходимых данных

strcpy(pravilnii.name, "ravnostoronnii treugolnic");

strcpy(pravilnii.formula_S, "S=a*a/2 "); //присваивание значений

элементам

strcpy(pravilnii.formula_P, "P=3a"); //класса

strcpy(pravilnii.individuals, "a=b=c");

pravilnii.show_treugolnic(); // вывод необходимых данных

kvadrat one; // объекты класса

cout <<" kvadrat" <<endl;

strcpy(one.S, "S=a*a");

strcpy(one.P, "P=4*a"); //класса

strcpy(one.individuals, "a=b=c=d");

one.show_kvadrat(); // вывод необходимых данных

pryamougolnic two;

cout <<" pryamougolnic" <<endl;

strcpy(two.S, "S=a*b");

strcpy(two.individuals, "a=c");

one.show_pryamougolnic(); // вывод необходимых данных

{ treugolnic pryamougolnii, ravnobedrennii, pravilnii; // объекты класса

strcpy(pryamougolnii.name, "pryamougolnii treugolnic"); //присваивание

значений элементам

strcpy(pryamougolnii.formula_S, "S=0.5*a*b"); //присваивание значений

элементам

strcpy(pryamougolnii.formula_P, "P=a+b+c"); //класса

strcpy(pryamougolnii.individuals, "c^2=a^2+c^2, ^C=90 ");

pryamougolnii.show_treugolnic(); // вывод необходимых данных

strcpy(ravnobedrennii.name, "ravnobedrennii treugolnic");

strcpy(ravnobedrennii.formula_S, "S=0.5*a*b"); //присваивание значений

элементам

strcpy(ravnobedrennii.formula_P, "P=2a+c"); //класса

strcpy(ravnobedrennii.individuals, "a=b");

ravnobedrennii.show_treugolnic(); // вывод необходимых данных

strcpy(pravilnii.name, "ravnostoronnii treugolnic");

strcpy(pravilnii.formula_S, "S=a*a/2 "); //присваивание значений

элементам

strcpy(pravilnii.formula_P, "P=3a"); //класса

strcpy(pravilnii.individuals, "a=b=c");

pravilnii.show_treugolnic(); // вывод необходимых данных

kvadrat one; // объекты класса

cout <<" kvadrat" <<endl;

strcpy(one.S, "S=a*a");

strcpy(one.P, "P=4*a"); //класса

strcpy(one.individuals, "a=b=c=d");

one.show_kvadrat(); // вывод необходимых данных

pryamougolnic two;

cout <<" pryamougolnic" <<endl;

strcpy(two.S, "S=a*b");

strcpy(two.individuals, "a=c");

one.show_pryamougolnic(); // вывод необходимых данных

return 0;

}

Приложение В. Результат программы

Литература

1. Гамма, Э. Приемы объектно-ориентированного программирования. Паттерны проектиро-вания [Текст] / Э. Гамма, Р. Хелм, В. Джонсон. - СПб.: Питер, 2006.

2. Джамса, К. Учимся программировать на С++ [Текст] / К. Джамса. - М.: Мир, 2001.

3. Иванов, Г.С. Объектно-ориентированное программирование [Текст] / Г. С. Иванов. - М.: МГТУ им. Баумана, 2003.

4. Керниган, Б. Язык программирования СИ [Текст] / Б. Керниган, Д. Ритчи. - М.: Вильямс, 2006.

5. Маклаков, С.В. Анализ данных. Генератор ответов Crystal Reports [Текст] / С. В. Маклаков. - СПб.: БХВ, 2003.

6. Одинцов, И. Профессиональное программирование. Системный подход [Текст] / И. Одинцов. - СПб.: БХВ, 2004.

7. Павловская, Т.А. Языки программирования С, С++ [Текст] / Т. А. Павловская. - СПб.: Питер, 2005.

8. Гамма, Э. Приемы объектно-ориентированного программирования. Паттерны проектиро-вания [Текст] / Э. Гамма, Р. Хелм, В. Джонсон. - СПб.: Питер, 2006.

9. Джамса, К. Учимся программировать на С++ [Текст] / К. Джамса. - М.: Мир, 2001.

10. Иванов, Г. С. Объектно-ориентированное программирование [Текст] / Г. С. Иванов. - М.: МГТУ им. Баумана, 2003.

11. Керниган, Б. Язык программирования СИ [Текст] / Б. Керниган, Д. Ритчи. - М.: Вильямс, 2006.

12. Маклаков, С.В. Анализ данных. Генератор ответов Crystal Reports [Текст] / С.В. Маклаков. - СПб.: БХВ, 2003.

13. Одинцов, И. Профессиональное программирование. Системный подход [Текст] / И. Одинцов. - СПб.: БХВ, 2004.

14. Павловская, Т.А. Языки программирования С, С++ [Текст] / Т.А. Павловская. - СПб.: Питер, 2005.

Размещено на Allbest.ru


Подобные документы

  • Построение системы классов для описания плоских геометрических фигур: круг, квадрат, прямоугольник. Методы для создания объектов, перемещения на плоскости, изменения размеров и вращения на заданный угол. Реализованные алгоритмы, тестирование программы.

    курсовая работа [129,3 K], добавлен 04.05.2014

  • Изучение базовых понятий объектно-ориентированного программирования. Исследование принципов работы с классами и объектами. Построение системы классов для описания плоских геометрических фигур. Анализ методов создания объектов, перемещения на плоскости.

    лабораторная работа [212,0 K], добавлен 10.03.2013

  • Объектно-ориентированные языки моделирования. Разработка различных альтернативных подходов к анализу и проектированию. Взаимосвязь концептуальных и программных понятий. Проблемы масштабирования сложных систем. Диаграммы, описывающие поведение системы.

    лабораторная работа [159,4 K], добавлен 26.05.2014

  • Основные теоретические положения объектно–ориентированной технологии программирования. Характеристика языка и словарь моделирования UML. Представление управления моделью. Построение диаграммы классов и описание функционирования предметной области.

    курсовая работа [859,4 K], добавлен 11.05.2015

  • Освоение методики проектирования программных комплексов на базе объектно-ориентированного программирования. Описание понятий класс, конструктор и деструктор, наследование простое и множественное. Реализация объектной модели на языке программирования с++.

    курсовая работа [468,5 K], добавлен 11.12.2011

  • Проектирование и объектно-ориентированный анализ программного продукта для создания и поддержки составления генеалогического дерева. Морфологическая и функциональная модель системы, построение соответствующих диаграмм. Теория о BPWin и Microsoft Word.

    курсовая работа [887,4 K], добавлен 27.08.2012

  • Рассмотрение способов построения алгоритмов для решения конкретных задач. Программирование с помощью базовых операторов языка Turbo Pascal. Решение задачи определения площади и объема трехмерных фигур. Математическое моделирование геометрических тел.

    курсовая работа [365,3 K], добавлен 24.07.2014

  • Понятие и разновидности, подходы к формированию инфологических моделей. Модель информационной системы Захмана, направления ее развития и анализ результатов. Компоненты инфологического уровня описания предметной области. Сбор требований пользователей.

    презентация [136,3 K], добавлен 19.08.2013

  • Способы моделирования типовых геометрических объектов. Методы решения инженерно-геометрических задач в системах автоматизированного проектирования. Правила выполнения чертежей деталей, сборочных единиц, электрических схем по современным стандартам.

    методичка [44,6 K], добавлен 29.11.2010

  • Понятие компьютерной модели и преимущества компьютерного моделирования. Процесс построения имитационной модели. История создания системы GPSS World. Анализ задачи по прохождению турникета на стадион посредством языка имитационного моделирования GPSS.

    курсовая работа [291,3 K], добавлен 11.01.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.