2
Волжский Университет им. В.Н. Татищева
Факультет Информатики и Телекоммуникаций
Курсовая работа
Дисциплина: Системное программное обеспечение
Тема:
«C++: Стандартные библиотечные функции работы с графикой»
Тольятти 200г.
Содержание
Как было уже сказано, данный модуль используется для работы с графикой под ОС MS-DOS. Функции, используемые в нём, для работы с графикой, да и как и сама графика, довольно примитивны. Итак, начнём.
Для инициализации модуля требуется подключить, так называемый, заголовочный файл (#include <graphics.h>). В этом файле описаны все функции, которые требуются для написания программы работающей с “графикой”.
1.1 Анализ функции модуля
initgraph( &grdriver, &grmode, “path”); - функция инициализации графического режима, где &grdriver, &grmode, “path” - параметры загружаемого режима;
grdriver и grmode - переменные типа integer;
“path” - путь к загружаемому драйверу графического режима.
Функция закрытия графического режима: closegraph(); - данная функция без каких либо параметров и закрывает текущий графический режим.
Функция определения графического драйвера и видео режима: detectgraph( &grdriver, &grmode);
Функция, возвращающая структуру определения палитры: getdefaultpalette(); - возвращает указатель на заданную по умолчанию структуру палитры для текущего драйвера инициализированного по initgraph.
getdrivername(); - функция возвращает имя текущего графического драйвера.
getgraphmode(); - функция возвращает текущий графический режим.
getmoderange( grdriver, &low, &high); - функция возвращает диапазон режимов для данного графического драйвера, где grdriver, low, high - переменные типа integer.
graphdefaults(); - сбрасывает текущие настройки в настройки по умолчанию.
_graphgetmem(); - функция выделения памяти. Эту функцию вызывают подпрограммы в графической библиотеке, чтобы распределить память. Данную функцию можно использовать независимо от графической библиотеки, вызвав её с указанием нужного объёма памяти в байтах.
_graphfreemem(); - функция освобождения памяти. Используется в сочетании с _graphgetmem().
setgraphbufsize(); - функция изменяет внутренний размер графического буфера. Вызывается до initgraph().
graphresult(); - возвращает код ошибки для последней неудачно выполненной операции.
installuserdriver( int *name, int huge( *detect)); - функция устанавливает драйвер определённый программистом. *name - название нового драйвера, *detect - указатель на дополнительную функцию авто определения, которая может сопровождать новый драйвер. Эта функция (авто определения) не берёт ни каких параметров и возвращает целочисленное значение.
registerbgidriver( *grdriver) - Функция сообщает графической системе, что драйвер устройства, на который указывает *grdriver был включён во время “линковки”.
registerbgifont( *font) - Функция информирует графическую систему, что шрифт, на который указывает *font был включен во время “линковки”.
restorecrtmode() - Функция восстанавливает режим, существовавший до активизации графического режима функцией initgraph().
arc( int x, int y, int stangle, int endangle, int radius); - Функция рисует дугу, по заданным координатам x, y, начальным и конечным углом stangle, endangle и заданным радиусом radius.
bar( int left, int top, int right, int bottom); - Функция рисует прямоугольник начиная от левого верхнего угла с координатами left, top до правого нижнего угла с координатами right, bottom.
bar3d( int left, int top, int right, int bottom, int depth); - Функция рисует “трёхмерный прямоугольник” или, так сказать, подобие параллелепипеда, начиная от верхнего левого угла, до правого нижнего угла и с указанием глубины depth.
circle( int x, int y, int radius); - Функция рисует окружность с центром в точке с координатами ( x, y) и радиусом radius.
cleardevice(); - Функция очищает экран в графическом режиме и возвращает текущую позицию указателя в точку с координатами ( 0, 0).
clearviewport(); - Функция стирает область просмотра и перемещает текущую позицию в точку с координатами ( 0, 0), относительно области просмотра.
drawpoly( int numpoints, int *polypoints); - Функция рисует полигон с количеством вершин numpoints и координатами вершин *polypoints. *polypoints является одномерным массивом.
ellipse( int x, int y, int stangle, int endangle, int xradius, int yradius); - Функция рисует эллипс с координатами в точке ( x, y), начальным и конечным углами stangle, endangle, и радиусами xradius, yradius по осям x и y.
fillpoly( int numpoints, int *polypoints); - Функция рисует и закрашивает заданным цветом полигон.
fillelipse( int x, int y, int xradius, int yradius); - Функция рисует закрашенный эллипс.
floodfill( int x, int y, int border); - Область, ограниченная цветной границей закрашивается установленным образцом и цветом.
getarccoords( &arcinfo); - Функция возвращает координаты последней точки, на которую был переведён указатель, где параметр &arcinfo объявлен как struct arccoordstype arcinfo.
getaspectratio( &xasp, &yasp); - Получает значения коэффициента сжатия в &xasp, &yasp, где xasp, yasp являются переменными типа integer.
getbkcolor() - Возвращает значение типа integer текущего цвета фона.
getcolor() - Возвращает значение типа integer установленного на данный момент цвета.
getdefaultpalette() - ( дополнение) Возвращает структуру определения палитры в переменную объявленную как struct palettetype far *<имя_переменной>=(void *) 0;.
getfillpattern( char far *pattern); - Копирует определённый пользователем заполненный образец в память.
getfillsetting( &fillinfo); - Получает информацию о текущих настройках стиля и цвета, где параметр &fillinfo объявлен как struct fillsettingstype fillinfo.
getimage( int left, int top, int right, int bottom, void far *bitmap); - Сохраняет картинку в специально отведённой области памяти, где left, top, right, bottom координаты картинки, а *bitmap указатель на область памяти.
getlinesettings( &lineinfo); - Получает текущий тип линии, образец и толщину, где параметр &lineinfo объявлен как struct linesettingstype lineinfo.
getmaxcolor(); - Возвращает значение типа integer, которое соответствует номеру цвета.
getmaxmode(); - Возвращает значение типа integer, которое соответствует максимальному номеру графического режима, для текущего драйвера.
getmaxx(); - Возвращает значение типа integer, которое соответствует максимальному количеству точек по оси x для текущего графического режима.
getmaxy(); - Возвращает значение типа integer, которое соответствует максимальному количеству точек по оси y для текущего графического режима.
getmodename( int mode_number); - Возвращает значение типа integer, которое соответствует указанному графическому режиму.
getpalette( &palette); - Получает информацию о текущей палитре, где параметр &palette объявлен как struct palettetype palette.
getpalettesize(); - Функция возвращает значение типа integer, соответствующее количеству цветов палитры для текущего графического режима.
getpixel( int x, int y); - Функция возвращает номер цвета точки, находящейся по координатам ( x, y).
gettextsettings( &textinfo); - Функция возвращает текущие настройки фонта для текущего графического режима, где параметр &textinfo определён как struct textsettingstype textinfo.
getviewsettings( &viewinfo); - Получает информацию о текущей области просмотра, где параметр &viewinfo определяется как struct viewporttype viewinfo.
getx(); - Функция типа integer возвращает текущую позицию указателя по оси x.
gety(); - Функция типа integer возвращает текущую позицию указателя по оси y.
grapherrormsg( int errorcode); - Возвращает код ошибки в виде переменной errorcode типа intger.
imagesize( int left, int top, int right, int bottom); - Определяет размер области памяти, необходимый для сохранения двоичного образа.
installuserfont( char far *name); - Функция типа intger возвращает номер идентификатора шрифта, который можно передать функции settextstyle для выбора данного шрифта. Параметр *name это путь к файлу шрифта. Одновременно данной функцией можно подключить до двадцати шрифтов.
line( int x0, int y0, int x1, int y1); - Функция рисует линию от точки с координатами x0, y0 до точки с координатами x1, y1. Не обновляет текущую позицию.
linerel( int dx, int dy); - Функция рисует линию от текущей позиции до точки, находящейся на относительном расстоянии от текущей позиции, затем передвигает текущую позицию.
lineto( int x, int y); - Рисует линию от текущей позиции до точки с координатами ( x, y), затем переносит текущую позицию в ( x, y).
moverel( int dx, int dy); - Перемещает текущую позицию на относительное растояние.
moveto( int x, int y); - Перемещает текущую позицию в точку с координатами ( x, y).
outtext( char far *textstring); - Выводит строку в графическом режиме. Строка должна заключатся в “”.
outtextxy( int x, int y, char far *textstring); - Выводит строку в графическом режиме предварительно перейдя в точку с координатами ( x, y).
pieslice( int x, int y, int stangle, int endangle, int radius); - Рисует и закрашивает замкнутый сектор круга.
putimage( int left, int top, void far *bitmap, int op); - Выводит битовый образ на экран.
putpixel( int x, int y, int color); - Рисует точку с координатами ( x, y) и цветом color.
rectangle( int left, int top, int right, int bottom); - Рисует прямоугольник от точки с координатами (left, top) до точки с координатами ( right, bottom).
Registerfarbgidriver (void far *driver); - Данная функция используется для регистрации удалённых графических драйверов.
Registerfarbgifont (void far *font); - Данная функция используется для регистрации удалённых шрифтов.
sector (int x, int y, int stangle, int endangle, int xradius, int yradius); - Функция рисует сектор круга установленным цветом, затем заполняет его используя образец и цвет, установленные функциями setfillstyle или setfillpattern.
setactivepage( int page); - Устанавливает активную страницу для графического вывода.
setallpalette( &palette); - Устанавливает полную палитру цветов для данного режима, где переменная &palette определена как struct palettetype palette.
setaspectratio( int xasp, int yasp); - Заменяет заданный по умолчанию аспект сжатия графической системы.
setbkcolor( int color); - Устанавливает цвет фона по его номеру заданному переменной color.
setcolor( int color); - Устанавливает цвет по его номеру заданному переменной color.
setfillpattern( char far *upattern, int color); - Выбирает определённый пользователем образец заливки.
setfillstyle( int pattern, int color); - Функция устанавливает образец и цвет заливки.
setgraphmode( int mode); - Устанавливает систему в графический режим, определённый параметром mode. Сбрасывает все настройки в положение “по умолчанию”. Очищает экран.
setlinestyle( int linestyle, unsigned upattern, int thickness); - Устанавливает стиль рисуемых линий для функций рисования line, lineto, rectangle, drawpoly, etc.
setpalette( int colornum, int color); - Устанавливает палитру от цвета colornum до цвета color.
setrgbpalette( int colornum, int red, int green, int blue); - Данная функция может использоваться с IBM 8514 и VGA драйверами.
settextjustify( int horiz, int vert); - Устанавливает выравнивание текста для графического режима. По умолчанию стоит выравнивание по верхнему левому углу.
settextstyle( int font, int direction, int charsize); - Устанавливает характеристики текста: стиль, положение( горизонтальное или вертикальное), размер шрифта.
setusercharsize( int multx, int divx, int multy, int divy); - Устанавливает определённый пользователем “коэффициент сжатия” шрифта. По умолчанию ширина шрифта определена как multx:divx, высота как multy:divy.
setviewport( int left, int top, int right, int bottom, int clip); - Устанавливает новую область просмотра для графического вывода. Параметр clip определяет отсечены или нет все рисунки текущей области просмотра.
setvisualpage( int page); - Устанавливает страницу с номером page визуальной графической страницей.
setwritemode( int mode); - Устанавливает режим вывода объектов в графическом режиме. Параметр mode может принимать значения 0, которое соответствует режиму copy_put или 1, соответствующее режиму xor_put. Параметр copy_put использует ассемблерную команду MOV, рисуя поверх всех объектов новый объект. Параметр xor_put использует команду XOR (команду неэквивалентности), замещая предыдущий объект таким же новым. Используя дважды параметр xor_put, вы получите первоначальный результат.
textheight( char far *textstring); - Функция возвращает высоту строки в количестве точек.
textwidth( char far *textstring); - Функция возвращает ширину строки в количестве точек.
1.2 Анализ констант, типов и глобальных переменных модуля
arccoordstype - Используется функцией getarccoords для получения параметров текущей области просмотра.
struct arccoordstype
{
int x, y; /* center points of arc */
int xstart, ystart; /* start position */
int xend, yend; /* end position */
}
CGA_COLORS - Данная константа определяет цветовую схему, доступную для функция BGI, выполняющихся на CGA мониторах. Определена в модуле GRAPHICS.H. Используется функциями setallpalette, setbkcolor, setcolor, setpalette.
COLORS - Данная символьная константа устанавливает атрибут цвета символов на EGA и CGA мониторах. Определена в модуле CONIO.H. Используется функциями (функции описаны в модуле CONIO.H) textattr, textbackground, textcolor.
EGA_COLORS - Данная константа определяет цветовую схему, доступную для функция BGI, выполняющихся на EGA мониторах. Определена в модуле GRAPHICS.H. Используется функциями setallpalette, setbkcolor, setcolor, setpalette.
fill_patterns - Образцы заливки применяемые функциями getfillsettings и setfillstyle( см. таблицу 1).
Таблица 1.
Название |
Значение |
Результат заполнения |
|
EMPTY_FILL |
0 |
Цвет фона |
|
SOLID_FILL |
1 |
Сплошная заливка |
|
LINE_FILL |
2 |
Заливка типа “---” |
|
LTSLASH_FILL |
3 |
Заливка типа “///” |
|
SLASH_FILL |
4 |
“///” толстые линии |
|
BKSLASH_FILL |
5 |
“” толстые линии |
|
LTBKSLASH_FILL |
6 |
Заливка типа “” |
|
HATCH_FILL |
7 |
Редкая штриховка |
|
XHATCH_FILL |
8 |
Сильная перекрестная |
|
INTERLEAVE_FILL |
9 |
“Чередование строк” |
|
WIDE_DOT_FILL |
10 |
Заливка точками(широк) |
|
Таблица 1. продолжение. |
|||
CLOSE_DOT_FILL |
11 |
Заливка точками(узк) |
|
USER_FILL |
12 |
Определ. пользователем |
|
Название |
Значение |
Результат |
|
DEFAULT_FONT |
0 |
8x8 растровый шрифт |
|
TRIPLEX_FONT |
1 |
Штриховой тройной шрифт |
|
SMALL_FONT |
2 |
Штриховой маленький шрифт |
|
SANS_SERIF_FONT |
3 |
Штриховой "гротесковый” шрифт |
|
GOTHIC_FONT |
4 |
Штриховой готический шрифт |
|
Константа |
Значение |
|
DETECT |
0 (авто определение) |
|
CGA |
1 |
|
Таблица 3. продолжение. |
||
MCGA |
2 |
|
EGA |
3 |
|
EGA64 |
4 |
|
EGAMONO |
5 |
|
IBM8514 |
6 |
|
HERCMONO |
7 |
|
ATT400 |
8 |
|
VGA |
9 |
|
PC3270 |
10 |
|
Код ошибки |
Константа graphics_errors |
Соответствующее сообщение об ошибке |
|
0 |
grOk |
Нет ошибок |
|
-1 |
grNoInitGraph |
(BGI) графика не установлена (использовать initgraph) |
|
-2 |
grNotDetected |
Графические аппаратные средства не обнаружены |
|
-3 |
grFileNotFound |
Файл драйвера не найден |
|
Таблица 4. продолжение. |
|||
-4 |
grInvalidDriver |
Недействительный файл драйвера |
|
-5 |
grNoLoadMem |
Недостаточно памяти чтобы загрузить драйвер |
|
-6 |
grNoScanMem |
Недостаточно памяти в просмотре заливки |
|
-7 |
grNoFloodMem |
Недостаточно памяти для заливки |
|
-8 |
grFontNotFound |
Файл шрифта не найден |
|
-9 |
grNoFontMem |
Недостаточно памяти для загрузки шрифта |
|
-10 |
grInvalidMode |
Недопустимый графический режим для выбранного драйвера |
|
-11 |
grError |
Графическая ошибка |
|
-12 |
grIOerror |
Графическая ошибка ввода/вывода |
|
-13 |
grInvalidFont |
Недопустимый файл шрифта |
|
Таблица 4. продолжение. |
|||
-14 |
grInvalidFontNum |
Недопустимый номер шрифта |
|
-15 |
grInvalidDeviceNum |
Недопустимый номер устройства |
|
-18 |
grInvalidVersion |
Недопустимый номер версии |
|
Графический драйвер |
Графические режимы(graphics_modes) |
Значение |
Разрешение |
Палитра |
Страницы |
|
CGA |
CGAC0CGAC1CGAC2CGAC3CGAHI |
01234 |
320 x 200320 x 200320 x 200320 x 200640 x 200 |
C0C1C2C32color |
11111 |
|
MCGA |
MCGAC0MCGAC0MCGAC0MCGAC0MCGAMEDMCGAHI |
012345 |
320 x 200320 x 200320 x 200320 x 200640 x 200640 x 480 |
C0C1C2C32color2color |
111111 |
|
EGA |
EGALOEGAHI |
01 |
640 x 200640 x 350 |
16color16color |
42 |
|
Таблица 5. продолжение. |
||||||
EGA64 |
EGA64LOEGA64HI |
01 |
640 x 200640 x 350 |
16color4color |
11 |
|
EGA-MONO |
EGAMONOHIEGAMONOHI |
01 |
640 x 350640 x 350 |
2color2color |
1*2** |
|
HERC |
HERCMONOHI |
0 |
720 x 348 |
2color |
2 |
|
ATT400 |
ATT400C0ATT400C1ATT400C2ATT400C3ATT400MEDATT400HI |
012345 |
320 x 200320 x 200320 x 200320 x 200640 x 200640 x 400 |
C0C1C2C32color2color |
111111 |
|
VGA |
VGALOVGAMEDVGAHI |
012 |
640 x 200640 x 350640 x 480 |
16color16color16color |
221 |
|
PC3270 |
PC3270HI |
0 |
720 x 350 |
2color |
1 |
|
IBM8514 |
IBM8514HIIBM8514LO |
10 |
1024x 760640 x 480 |
256color256color |
||
Константа |
Значение |
Результат |
|
SOLID_LINE |
0 |
Сплошная линия |
|
DOTTED_LINE |
1 |
Пунктир |
|
CENTER_LINE |
2 |
Центрированная линия |
|
DASHED_LINE |
3 |
Пунктирная линия |
|
USERBIT_LINE |
4 |
Определяется пользователем |
|
line_widths - Константа ширины линий для функций getlinesettings() и setlinestyle()( см. таблицу 7).
Таблица 7.
Константа |
Значение |
Результат |
|
NORM_WIDTH |
1 |
Ширина в 1-н пиксель |
|
THICK_WIDTH |
3 |
Ширина в 3-и пикселя |
|
Элемент |
Описание |
|
upattern |
Установленный пользователем битовый образец используется когда стиль линии стоит как USERBIT_LINE. |
|
Таблица 8. продолжение. |
||
linestyle |
Определяет в каком виде будут выводится следующие линии( сплошной, пунктирный, центрированный). |
|
thickness |
Определяет будет ли толщина следующих линий обычной или толстой. |
|
16-и битный образец |
upattern |
|
..xx..xx..xx..xx....xxxx....xxxx..xxxxxx..xxxxxxxxxxxxxxxxxxxxxx |
0x3333(штрих пунктир)0x0F0F(длинный штрих пунктир)0x3F3F(более длинный штрих пунктир)0xFFFF(сплошная линия) |
|
Элемент |
Описание |
|
Size |
Даёт номер цветов в палитре для текущего графического драйвера в текущем режиме. |
|
colors |
Массив байтов, содержащий необработанный номер цвета для каждого входа в палитру. Если элемент цветов -1, то палитра для данного входа не определена. |
|
Константа |
Значение |
Описание |
|
COPY_PUT |
0 |
Битовый рисунок источника копируется на экран. |
|
XOR_PUT |
1 |
Исключающее ИЛИ. Отображает на экране исходное изображение. |
|
OR_PUT |
2 |
ИЛИ. Отображает на экране текущее изображение, не убирая предыдущего выведенного этого же изображения. |
|
Таблица 11. продолжение. |
|||
AND_PUT |
3 |
Выводит на экран картинку поверх остальных объектов. |
|
NOT_PUT |
4 |
Копирует и вставляет инверсированный источник. |
|
text_just - Параметр горизонтального и вертикального выравнивания для функции settextjustify().
Таблица 12. Значения параметра text_just.
Аргумент |
Константа |
Значение |
Результат |
|
Horiz |
LEFT_TEXT CENTER_TEXT RIGHT_TEXT |
0 1 2 |
По левому краю По центру По правому краю |
|
Vert |
BOTTOM_TEXT CENTER_TEXT TOP_TEXT |
0 1 2 |
По низу По центру По верху |
|
text directions - Настройки текста. Содержит два параметра HORIZ_DIR и VERT_DIR.
textsettingstype - Используется для получения текущих настроек текста функцией gettextsettings().
struct textsettingstype
{
int font;
int direction;
int charsize;
int horiz;
int vert;
}
USER_CHAR_SIZE - Определённый пользователем размер символа. В таблице 13 указаны значения данного параметра, а так же размеры шрифтов, соответствующие заданному параметру.
Таблица 13.
Значение |
Размер дисплея 8x8 растровых шрифтов |
|
1 |
Символы дисплея в 8x8 экранных блоков |
|
2 |
Символы дисплея в 16x16 экранных блоков |
|
... |
... |
|
10 |
Символы дисплея в 80x80 экранных блоков |
|
Используется функциями gettextsettings(), settextstyle(), setusercharsize() и параметром textsettingstype.
VERT_DIR - Данный параметр устанавливает направление графического вывода шрифта (Имя параметра: VERT_DIR; Значение: 1; Направление: Снизу в верх, поворачивает выводимый текст на 90 градусов против часовой стрелки). Данный параметр используется функциями gettextsettings(), settextstyle(), setusercharsize().
viewporttype - Используется для получения настроек области вывода функцией getviewsettings().
struct viewporttype
{
int left;
int top;
int right;
int bottom;
int clip;
}
Константа |
Значение |
Описание |
|
MB_NONE |
0 |
Кнопки мыши не нажаты |
|
MB_LEFT |
1 |
Нажата левая кнопка мыши |
|
MB_RIGHT |
2 |
Нажата правая кнопка мыши |
|
MB_LAR |
3 |
Нажаты обе кнопки мыши |
|
MB_MIDDLE |
4 |
Нажата средняя кнопка мыши |
|
! | Как писать курсовую работу Практические советы по написанию семестровых и курсовых работ. |
! | Схема написания курсовой Из каких частей состоит курсовик. С чего начать и как правильно закончить работу. |
! | Формулировка проблемы Описываем цель курсовой, что анализируем, разрабатываем, какого результата хотим добиться. |
! | План курсовой работы Нумерованным списком описывается порядок и структура будующей работы. |
! | Введение курсовой работы Что пишется в введении, какой объем вводной части? |
! | Задачи курсовой работы Правильно начинать любую работу с постановки задач, описания того что необходимо сделать. |
! | Источники информации Какими источниками следует пользоваться. Почему не стоит доверять бесплатно скачанным работа. |
! | Заключение курсовой работы Подведение итогов проведенных мероприятий, достигнута ли цель, решена ли проблема. |
! | Оригинальность текстов Каким образом можно повысить оригинальность текстов чтобы пройти проверку антиплагиатом. |
! | Оформление курсовика Требования и методические рекомендации по оформлению работы по ГОСТ. |
→ | Разновидности курсовых Какие курсовые бывают в чем их особенности и принципиальные отличия. |
→ | Отличие курсового проекта от работы Чем принципиально отличается по структуре и подходу разработка курсового проекта. |
→ | Типичные недостатки На что чаще всего обращают внимание преподаватели и какие ошибки допускают студенты. |
→ | Защита курсовой работы Как подготовиться к защите курсовой работы и как ее провести. |
→ | Доклад на защиту Как подготовить доклад чтобы он был не скучным, интересным и информативным для преподавателя. |
→ | Оценка курсовой работы Каким образом преподаватели оценивают качества подготовленного курсовика. |
Курсовая работа | Деятельность Движения Харе Кришна в свете трансформационных процессов современности |
Курсовая работа | Маркетинговая деятельность предприятия (на примере ООО СФ "Контакт Плюс") |
Курсовая работа | Политический маркетинг |
Курсовая работа | Создание и внедрение мембранного аппарата |
Курсовая работа | Социальные услуги |
Курсовая работа | Педагогические условия нравственного воспитания младших школьников |
Курсовая работа | Деятельность социального педагога по решению проблемы злоупотребления алкоголем среди школьников |
Курсовая работа | Карибский кризис |
Курсовая работа | Сахарный диабет |
Курсовая работа | Разработка оптимизированных систем аспирации процессов переработки и дробления руд в цехе среднего и мелкого дробления Стойленского ГОКа |
Курсовая работа | Туберкулез |
Курсовая работа | Учет материально-производственных запасов |
Курсовая работа | Доказывание в гражданском процессе |
Курсовая работа | Microsoft Excel, его функции и возможности |
Курсовая работа | Инновационная деятельность предприятия |
Курсовая работа | Стимулирование труда персонала |
Курсовая работа | Методы исследования сенсорных систем |
Курсовая работа | Поведение фирмы в условиях совершенной конкуренции |
Курсовая работа | Суд присяжных: особенности судопроизводства |
Курсовая работа | Исследование самооценки и уровня притязаний современной молодежи |
Курсовая работа | Организация процесса управления кредитным риском в коммерческом банке |
Курсовая работа | Дидактические игры как средство развития познавательного интереса на уроках обучения грамоте |
Курсовая работа | Формирование спроса на предприятиях общественного питания |
Курсовая работа | Организационная культура |
Курсовая работа | Разработка бизнес-плана на примере ООО "Макин и компания" |