Проектирование Pascal-программ. Контрольная работа. Информационное обеспечение, программирование.

⚡ 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻
Информационное обеспечение, программирование
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!
Похожие работы на - Проектирование Pascal-программ
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Скачать Скачать документ
Информация о работе Информация о работе
Нужна качественная работа без плагиата?
Не нашел материал для своей работы?
Поможем написать качественную работу Без плагиата!
Федеральное
государственное бюджетное образовательное учреждение
высшего
профессионального образования
«Пензенская
государственная технологическая академия»
по
дисциплине «Информатика и программирование»
Отчет о выполнении лабораторной работы
РАЗРАБОТКА PASCAL-ПРОГРАММ С ИНТЕРФЕЙСОМ
Цель работы: Освоение методов проектирования
Pascal-программ с интерфейсом типа «меню».
Задание на лабораторную работу: Разработать
программу, обеспечивающую работу пользователя в диалоговом режиме с
возможностью выбора функций с помощью одноуровневого меню заданного типа.
. Выводит сообщения о назначении программы.
. Ввод данных происходит в режиме диалога.
. Все функции программы реализованы в модуле
UNIT.
. Головной модуль программы использует процедуры
из модулей типа UNIT.
. Выводит запросы на ввод исходных данных.
. Производит контроль исходных данных и
коррекцию ошибочно введенных значений переменных.
Законченная программа будет иметь вид:
unit m_unit;_rec =
^my_record;_record = record:Integer;:string;:real;:real;:m_rec;;menu ; {Процедура
вывода
меню}
init_s
; {Процедура производит при старте заполнение начальных параметров}
procedure
new_s
; {Процедура добавления сотрудника в список}
procedure
view_s
; {Процедура просмотра списка сотрудников}
procedure
del_s
; {Процедура удаления сотрудника из списка}
procedure clear_s; {Процедура
очищает
список}
Head:m_rec;
{Указатель на начало списка}
procedure
init_s;
{Процедура производит при старте заполнение начальных параметров}
end;menu;:Char;_s;(11);(1);;('Добавить
Просмотр
Удалить
ESC-Выход');(12);(1,1);('Д');(10,1);('П');(19,1);('У');(1,2);(11);:=ReadKey;(ch=#27)
then exit;ch of
{***********************************************************}
procedure
new_s;
{Процедура добавления посетителя в список}
var,ends:m_rec;;(10); {зел
цвет}Head
= Nil then(head);^.next := NIL;:= head;:= Head;(tmp^.Next<>NIL) do:=
tmp^.Next;;:=tmp;(tmp);^.next := tmp;^.Next
:= NIL;
{ Num
:Integer;:string;:string;:real;:real;}('Номер
комнаты');(tmp^.Num);('фио');(tmp^.FIO);
readln(tmp^.OKL);('Цена
суток');(tmp^.Prc);
{ tmp^.Num :=1;^.FIO :=
'asdasd';^.OKL :=123;^.Prc :=1;}(14);('Добавлена
запись');(10);
{Шапка}('|----|---------------------------|-------|-----|--------|');(10);('||');textcolor(13);write('
N ');(10);('||');textcolor(13);write('ФИО
сотрудника
');(10);('||');textcolor(13);write('Суток');(10);('||');textcolor(13);write('Цена');(10);('||');textcolor(13);write('Итого');(10);('||');
{Вывод
текущей
записи}('|------|-------------------------|------------|-------|---------|');(10);('||');textcolor(15);write(tmp^.num:4);(10);('||');textcolor(15);write(tmp^.FIO:20);(10);('||');textcolor(15);write(tmp^.OKL:8:2);(10);('||');textcolor(15);write(tmp^.Prc:5:2);(10);('||');textcolor(15);write(tmp^.OKL*tmp^.Prc:8:2);(10);('||');
{подвал}('|-------|-----------------------------|------------|-------|----------|');(11);('Для
продолжения
нажмите
любую
клавишу');;;
{***********************************************************}
{***********************************************************}
{***********************************************************}view_s;
{Процедура
просмотра
списка
сотрудников}:m_rec;;(10);
{Шапка}('|------|-------------------------------|-----------|-----|-------|');(10);('||');textcolor(13);write('
N ');(10);('||');textcolor(13);write('ФИО
сотрудника');(10);('||');textcolor(13);write('Суток');(10);('||');textcolor(13);write('Цена');(10);('||');textcolor(13);write('Итого');(10);('||');:=head;(tmp<>
NIL) do
{вывод
текущей
записи}('|-----|---------------------------|----------|-------|---------|');(10);('||');textcolor(15);write(tmp^.num:4);(10);('||');textcolor(15);write(tmp^.FIO:20);(10);('||');textcolor(15);write(tmp^.OKL:8:2);(10);('||');textcolor(15);write(tmp^.Prc:5:2);(10);('||');textcolor(15);write(tmp^.OKL*tmp^.Prc:8:2);(10);('||');:=
tmp^.next;;
{подвал}('|------|------------------------------|-----------|------|-----------|');(11);
{***********************************************************}
{***********************************************************}
{***********************************************************}
procedure
del_s;
{Процедура удаления из списка}
var,t2:m_rec;:integer;;(10);('Номер
комнаты');(13);(num);(10);:=head;:=head;(t1<>nil)
dot1^.num = num thent1 = head thent1^.Next = NIL then(head);:= NIL;;:=
t1^.next;(t1);t1^.next <> NIL
then^.Next:=t1^.next;(t1);:=t2;^.next:=Nil;(t1);:=t2;;;;:=t1;t1<> NIL
then:=t1^.next;;;
write('Для продолжения
нажмите любую клавишу');;;
{***********************************************************}
{***********************************************************}
{***********************************************************}
procedure
clear_s;
{Процедура очищает список}
var:m_rec;:=Head;(tmp<>NIL)
do:=tmp^.next;(tmp);:=Head;;
Модуль типа UNIT в Turbo Pascal - это отдельно
хранимая и независимо компилируемая программная единица, в отличие от
подпрограмм, которые, являясь структурным элементом Pascal-программы, не могут
существовать вне ее.
В соответствии с вышеизложенным модуль типа UNIT
имеет следующую структуру:{служебное слово} Unit_Name {имя модуля};{ начало
интерфейсной части }
Описание объектов, видимых из других программных
модулей:...... (определение констант)...... (определение типов
переменных)...... (определение переменных)...... (только заголовки
процедур)...... (только заголовки функций){ начало части реализации }
Описание объектов, скрытых от других программных
модулей........... (определение констант)
............................... (полные описания
процедур и..... функций, включая процедуры
перед использованием модуля UNIT_NAME;. {
Окончание модуля }
. Каковы структура и назначение части Interface?
Интерфейсная часть - начинается с ключевого
словаInterface (интерфейс, сочленение, соединение) и содержит обращение к
другим модулям и объявления (описания) глобальных объектов т. е. меток,
констант, типов, переменных, и заголовков процедур и функций которые доступны
основной программе и другим модулям (т. е. видимые из вне).
. Каковы структура и назначение части
Implementation?
Раздел реализации - начинается с ключевого
словаImplementation(выполнение) и содержит описание локальных для модуля
объектов т. е. меток, констант, типов, переменных которые не доступны основной
программе и другим модулям (т. е. не видимые из вне) и полное описание процедур
и функций. При этом в заголовке подпрограмм список формальных параметров м.б.
опущен, но если он приводится то должен точно соответствовать описанию в
интерфейсной части.
. Для чего нужен раздел инициализации
переменных?
Этот раздел используется для открытия файлов.
. Какое расширение имеет модуль UNIT (исходный
модуль)?
Имя модуля выбирается по общим правилам и должно
совпадать с именем дискового файла содержащего исходный текст модуля.
Расширение в имени модуля (.pas) не указывается оно задается по умолчанию.
. Какое расширение имеет откомпилированный
модуль типа UNIT?
Модуль компилируется точно таким же образом, как
и обычные программы, но так как модуль не является непосредственно выполняемой
единицей, то в результате его компиляции образуется дисковый файл с расширением
.TPU (Turbo Pascal Unit ), а не с расширением .EXE. При компиляции модуля имя
файла (NAME.TPU) берется из имени файла с исходным текстом модуля (NAME.PAS).
. Может ли модуль UNIT выполняться
самостоятельно?
В отличие от программы, рассматриваемая единица
не может запускаться для выполнения самостоятельно, она может участвовать в
выполнении программы или при построении другого модуля.
. Каковы правила обращения к модулю UNIT?
Чтобы основная программа могла воспользоваться
константами, перемен-ными, процедурами и другими объектами, описанными в
интерфейсной секции используемого модуля, необходимо указать в программе имя
нужного TPU-файла.
Выводы о проделанной лабораторной работе: Входе
выполнения работы были освоены методы проектирования Pascal-программ с
интерфейсом типа «меню».
Отчет о выполнении лабораторной работы
РАЗРАБОТКА PASCAL-ПРОГРАММ СОРТИРОВКИ ДАННЫХ
Цель работы: Освоение методов проектирования
Pascal-программ сортировки данных.
Разработать и отладить программу сортировки
массива данных. Структуру данных взять из лабораторной работы №8.
.Выводит сообщения о назначении программы;
. Ввод данных происходит в режиме диалога;
. Производит контроль вводимых числовых данных и
коррекцию ошибочно введенных данных;
. Выводит запросы на ввод исходных данных;
Законченная программа будет иметь вид:
unit m_unit;=5;_record =
record:Integer;:string;:real;:real;;menu ; {Процедура
вывода
меню}
init_s
; {Процедура производит при старте заполнение начальных параметров}
procedure
new_s
; {Процедура добавления в массив}
procedure
view_s
; {ЏаПроцедура просмотра массив}
procedure sort_s;:array[1..NN] of
my_record;:integer;crt,graph; init_s;
{Процедура производит при старте заполнение начальных параметров}
begin:=0;;menu;:Char;_s;(11);(1);;('Добавить
Просмотр
Сортировка
ESC-Выход');(12);(1,1);('Д');(10,1);('П');(19,1);('С');(1,2);(11);:=ReadKey;(ch=#27)
then exit;ch of
{***********************************************************}
procedure
new_s;
{Процедура добавления посетителя в массив}
var:integer;:boolean;;(10); {зел
цвет}CNT
< NN then(cnt);
readln(arr[CNT].Num);:=false;i:=1 to
CNT-1 doArr[i].Num = arr[CNT].Num then:=true;('Номер
',arr[CNT].Num, 'занят');;;((arr[CNT].Num
>0) and (arr[CNT].Num<10) and IsUse = False);('ФИО');(arr[CNT].FIO);('Количество
суток:');(arr[CNT].OKL);('Цена
суток:');(arr[CNT].Prc);(14);
writeln('|------|------------------------|---------|-----|--------|');
textcolor(10);('||');textcolor(13);write('
N ');(10);('||');textcolor(13);write('ФИО
сотрудника');(10);('||');textcolor(13);write('Суток');(10);('||');textcolor(13);write('Цена');(10);('||');textcolor(13);write('Итого');(10);('||');
{Вывод
текущей
записи}('|-------|---------------------------|----------|-------|---------|');(10);('||');textcolor(15);write(arr[CNT].num:4);(10);('||');textcolor(15);write(arr[CNT].FIO:20);(10);('||');textcolor(15);write(arr[CNT].OKL:8:2);(10);('||');textcolor(15);write(arr[CNT].Prc:5:2);(10);('||');textcolor(15);write(arr[CNT].OKL*arr[CNT].Prc:8:2);(10);('||');
{Подвал}('|------|--------------------------------|----------|-------|----------|');(11);
writeln(Нельзя
добавить! Достигнут максимум')
write('Для
продолжения нажмите любую клавишу');
{***********************************************************}
{***********************************************************}
{***********************************************************}
procedure
view_s;
{Процедура просмотра списка сотрудников}
{Шапка}('|-----|--------------------------------|---------|-----|--------|');(10);('||');textcolor(13);write('
N ');(10);('||');textcolor(13);write('ФИО
сотрудника');(10);('||');textcolor(13);write('Суток');(10);('||');textcolor(13);write('Цена');(10);('||');textcolor(13);write('Итого');(10);('||');i:=1
to CNT do
{Вывод
текущей
записи}('|------|-------------------------------|-----------|------|-----------|');(10);('||');textcolor(15);write(arr[i].num:4);(10);('||');textcolor(15);write(arr[i].FIO:20);(10);('||');textcolor(15);write(arr[i].OKL:8:2);(10);('||');textcolor(15);write(arr[i].Prc:5:2);(10);('||');textcolor(15);write(arr[i].OKL*arr[CNT].Prc:8:2);(10);('||');;
{Подвал}('|------|-----------------------------|----------|------|-----------|');(11);('Для
продолжения нажмите любую клавишу');
{***********************************************************}
{***********************************************************}
{***********************************************************}sort_s;:array[1..9]
of integer;:Array[1..NN] of my_record;,j,k:integer;:integer;:integer;CNT >1
theni:=1 to 9 do[i]:=0;;:=Arr[1].Num;:=Arr[1].Num;i:=1 to CNT
doArr[i].Num>Max then Max:=Arr[i].Num;Arr[i].Num0 thenk:=1 to B[j] do:=i+1;[i].NUM:=j+Min-1;;;;i:=1 to CNT doj:=1
to CNT doA[i].Num = Arr[j].Num then[i].FIO := Arr[j].FIO;[i].OKL :=
Arr[j].OKL;[i].Prc := Arr[j].Prc;;;;i:=1 to CNT do[i].Num := A[i].Num;[i].FIO
:= A[i].FIO;[i].OKL := A[i].OKL;[i].Prc := A[i].Prc;;;(11);('Отсортировано.
Для
продолжения нажмите любую клавишу');
. В чем суть алгоритма сортировки выбором?
Вначале отыскивается запись с наименьшим
значением ключа и она помещается на первое место. Эта запись исключается из
дальнейшего анализа. Затем отыскивается запись с наименьшим значением ключа в
оставшейся части массива, помещается на второе место и исключается из
дальнейшего анализа и т.д.
. В чем суть алгоритма сортировки обменом?
Выполняется последовательный анализ массива
данных: если два соседних элемента (ключа) не удовлетворяют условию (1), то они
меняются местами; если в процессе такого анализа выполнена хотя бы одна
перестановка, процесс сравнения повторяется с начала массива, иначе алгоритм
заканчивает работу.
. В чем суть алгоритма сортировки вставками?
Массив рассматривается состоящим из двух частей:
отсортированной части и неотсортированной части.
На первом шаге отсортированная часть содержит
первый по порядку элемент (запись) массива, неотсортированная - остальные. Шаг
в данном случае - это последовательность операций по добавлению (вставке)
одного элемента (первого из неотсортированной части) в то место отсортированной
части, которое после этого будет удовлетворять условию (1).
На втором шаге первый элемент из неотсортированной
части сравнивается поочередно с элементами отсортированной части и
устанавливается на место, удовлетворяющее условию (1); при этом может
потребоваться сдвиг всех расположенных ниже места вставки элементов на одну
позицию вниз; после этого отсортированная часть содержит два элемента и т.д.
. В чем суть алгоритма цифровой сортировки?
Этот метод еще называется сортировкой
"вычерпыванием". Он удобен для сортировки целых чисел (ключей),
имеющих сравнительно небольшой диапазон.
Пусть даны N целых чисел в массиве А,
принадлежащих диапазону от Amin до Amax включительно.
Каждому числу Ai поставим в соответствие j-й
элемент массива L; при этом индекс элемента определяется по формуле
Необходимо, чтобы массив L имел длину не менее K
= Amax-A min+1.
. Для каких данных можно применять цифровую
сортировку?
Он удобен для сортировки целых чисел (ключей),
имеющих сравнительно небольшой диапазон.
. В чем суть алгоритма сортировки подсчетом?
Идея алгоритма заключается в том, чтобы попарно
сравнить значения всех ключей массива К и при этом для каждого ключа Ki
подсчитать количество меньших его ключей Ci. Затем каждый i-й элемент (запись)
исходного массива К устанавливается на место, номер которого равен Ci+1 в
массиве А.
. В чем суть алгоритма сортировки слияние?
Этот алгоритм применим для внешней и внутренней
сортировки. Рассмотрим вариант для внешней сортировки.
Даны два файла A и B, содержащие упорядоченные
по возрастанию целые числа, длины файлов различны. Требуется сформировать файл
С, содержащий данные из файлов А и В в порядке возрастания.
) прочитать по одному элементу из файлов А и В;
) сравнить прочитанные элементы, меньшее
записать в файл С;
) прочитать следующий элемент из того файла,
элемент которого был записан в С, и повторить п. 2;
) если один из файлов закончился, то остаток
второго добавить к сформированной части файла С.
Выводы о проделанной лабораторной работе: В ходе
выполнения работы я освоил методы проектирования Pascal-программ с помощью
сортировки данных.
Отчет о выполнении лабораторной работы
РАЗРАБОТКА PASCAL-ПРОГРАММ С ИСПОЛЬЗОВАНИЕМ
ГРАФИЧЕСКИХ ПРОЦЕДУР И ФУНКЦИЙ
Цель работы: Освоение методов проектирования
Pascal-программ с использованием графических процедур и функций.
Разработать с использованием процедур и функций
из стандартного модуля Graph программу, обеспечивающую вывод графика заданной
функции, осей координат и поясняющего текста.
1. Выводит сообщения о назначении программы;
( при этом можно использовать текстовый режим);
. Происходит обработка ошибок при вводе данных и
инициализация графического режима;
. Выводит результаты в графической форме с
использованием трех цветов для оформления фона и элементов чертежа;
. Выводит надписи над графиком: " График
функции Y = ...";
. Выводит начальных и конечных значений
аргумента и функции около осей координат (Xн, Xк, Yн, Yк).
Законченная программа будет иметь вид:
unit m_unit;draw_s ;show_s ;:
Integer;,Xmax:real;,b,c:real;crt,graph;InitGraf:Integer; {Функция
инициализирует
графический
режим}:Integer;
{0 - Нет
ошибок.
Или
код ошибки}
CodeError:=
0; {Первичная инициализация, предпологается что все пройдет без ошибок}
gd:=detect;(gd,gm,'d:\BP\BGI\');GraphResult
<> grOk then:=GraphResult; { Возвращается
код
ошибки
}:= 0; { Возвращается
0, ошибок
нет
};:=CodeError;;
{***********************************************************}
{***********************************************************}
{***********************************************************}draw_s;
{Процедура
вывода
диаграммы
на
экран};InitGraf
= 0 then_s;;(12);
writeln('Ошибка
инициализации видеодрайвера');
{***********************************************************}
{***********************************************************}
{***********************************************************}f(x:real):real;cos(b*x)
= 0 then f:=0f:=a*(sin(b*x)/cos(b*x))-c;;show_s; {Процедура
прорисовки
диаграммы}:
integer; {Высота экрана}:
integer; {Ширина экрана}:real;:
integer;: real ; {Масштаб
по
Y}: real ; {Масштаб по
X},y0:integer;,Y:real;:Real; {макс}:Real;
{мин}:integer;:string;:=GetMaxX;:=GetMaxY;:=50;:=(Xmax-Xmin)/cnt;:=Xmin;:=F(x);:=F(x);X MM then MM:=F(X);F(x) < MMM then
MMM:=F(X);:=X+deltax;;:=(Ht-2*MinusY)/ABS(MM-MMM);:=Wt/(2*(Xmax-Xmin));:=Xmin;:=Trunc(wt/2)+trunc(X*ZmX);:=Ht-MinusY-trunc(F(X)*ZmY);(X0,Y0-MinusY);(1,
HorizDir, 1);(X0,Y0);i:=1 to CNT
do:=X+deltax;:=Trunc(wt/2)+trunc(X*ZmX);:=Ht-2*MinusY-trunc(F(X)*ZmY);F(X)<>0
THEN
lineto(X0,Y0):=X+deltax;:=Trunc(wt/2)+trunc(X*ZmX);:=Ht-2*MinusY-trunc(F(X)*ZmY);(X0,Y0);;;
{Рисуем
оси}:=0;:=Trunc(wt/2)+trunc(X*ZmX);:=Ht-2*MinusY;(X0+10,Y0+10);('0');(X0,Y0);(X0,Ht);(X0,Y0);(X0,2*MinusY);('Y');(X0,Y0);(0,Y0);(X0,Y0);(Wt,Y0);(Wt-50,Y0-30);('X');:=Trunc(wt/4);:=MinusY;(X0,Y0);(5,
HorizDir, 1);('Function Y=a*tg(b*x)-c;');;
. Какие процедуры используются для инициализации
графического режима?
В настоящее время более 50 стандартных
графических процедур и функ-ций содержится в стандартном модуле Graph.tpu.
Чтобы воспользоваться возможностями модуля GRAPH.tpu, необходимо иметь компьютер,
осна-щенный видеоадаптером. В состав модуля Graph входит ряд программ-драйверов
для наиболее распространенных видеоадаптеров: CGA, MCGA, EGA, VGA, SVGA,
Hercules, AT&T, 3270 PC. Эти драйверы хранятся в файлах с расширением .BGI
(Borland Graphic Interface). Для множества символов имеются файлы описаний с
расширением .CHR.
. Какова структура графической Pascal-программы?
Любая программа Turbo Pascal, использующая
графические процедуры и функции из модуля Graph, имеет следующую типовую
структуру:
Program prog_graph;Graph, Crt,
...... ;
...............................('Введите
XN, XK :'); { Ввод исходных
данных
}
Readln (Xn, Xk); { в текстовом режиме }('Введите
количество точек графика : ');(N);
{ Вычисление Yn и Yk и шага изменения аргумента
h }
{--------------- Инициализация графического
режима ------------}:= Detect;
InitGraph(grDriv, grMod,
'D:\TP\BGI');
{--------- Проверка успешного завершения
инициализации --------}
if GraphResult <> GrOK then(' Ошибка
!!!');
{... обработка кода ошибки .....}(1000);;
{---------------- Основная часть программы
--------------------}:=...; { Задание области вывода графика; }:=...; {можно
вводить с клавиатуры или задавать}:=...; {в программе }:=...;:=...; { Расчет
масштабов }:=...;
........... { Установка цветов, типов линий и
др.}:=xn; { Переход в начало графика }
... { Черчение отрезка прямой от предыдущей
точки к }
.......... { Черчение осей координат }
.......... { Вывод текста }KeyPressed;
{---------------- Завершение графического режима
--------------}.
. В чем суть алгоритма построения графика
функции?
Суть заключается в получении графика требуемой
функции.
. Как задается код графического режима и код
графического устройства?
Задание графического режима и кода графического
устройства имеет следующую типовую структуру:
Program prog_graph;Graph, Crt,
...... ; grDriv,
grMod : integer;
. Какие графические процедуры и функции относятся
к управляющим?
. Какие графические процедуры и функции
используются для формирования экрана, окна, страницы?
. Какие графические процедуры и функции
используются для работы с точечными изображениями?
. Какие графические процедуры и функции
используются для работы с графическими примитивами типа "линия"?
. Какие графические процедуры и функции
используются для работы с дугами, фигурами, штриховкой?
10. Какие графические процедуры и функции
используются для работы с цветом и палитрой?
11. Какие графические процедуры и функции
используются для работы с текстом?
. В чем суть алгоритма поиска экстремумов
нелинейных функций?
Чтобы график заданной функции входил в
предоставленное для его изображения окно, необходимо точно рассчитать масштабы
Мx и Мy. Точность масштаба по оси Y (Мy) зависит от того, насколько точно будет
произведен расчет граничных значений (экстремумов) функции Yфmin и Yфmax в
заданном диапазоне (Хн ..Хк).
Выводы о проделанной лабораторной работе: В ходе
выполнения работы я освоил методы проектирования Pascal-программ с
использованием графических процедур и функций.
Похожие работы на - Проектирование Pascal-программ Контрольная работа. Информационное обеспечение, программирование.
Доклад по теме Профессия бухгалтера
Могут Ли Деньги Сделать Человека Счастливым Сочинение
Сочинение по теме Путешествие к трансцендентному: впечатления от философской книги Николая Бердяева "Самознание"
Реферат: Гай Саллюстий Крисп
Функции Центральных Банков Реферат
Контрольная работа по теме Анализ организации труда персонала в ООО 'Калининский склад'
Курсовая работа по теме Проектирование системы управления ООО 'Артекс'
Курсовая работа по теме Проектирование стального вертикального резервуара с понтоном для хранения нефти объемом 28000 м3
Шахтные Подъемные Установки Реферат
Контрольная Работа По Математике 4 Класс Годовая
Курсовая работа по теме Характеристика программы "Virtual Dub"
Аргументы К Литературным Сочинениям
Курсовая Работа Влияние Образа Жизни На Здоровье
Нормативная База Исследования В Курсовой Работе
Дипломная работа: Методы ссылочного ранжирования в информационно-поисковых системах. Скачать бесплатно и без регистрации
Курсовая работа: Обеспечение занятости населения региона и создание новых рабочих мест
Реферат На Тему Трансакционные Издержки Создания Собственного Бизнеса В России
Реферат: Памятка по CSS
Способы перевода терминов с английского языка на русский (на материале экономических текстов)
Реферат по теме Влияние совместимости родителей на взаимоотношения ребенка в детском коллективе
Дипломная работа: Совершенствование учета готовой продукции и ее реализации
Реферат: Психическая дезадаптация участников ликвидации аварии на Чернобыльской АЭС
Похожие работы на - Принятие управленческого решения об открытии малого предприятия ООО 'Святогор'