Всё сдал! - помощь студентам онлайн Всё сдал! - помощь студентам онлайн

Реальная база готовых
студенческих работ

Узнайте стоимость индивидуальной работы!

Вы нашли то, что искали?

Вы нашли то, что искали?

Да, спасибо!

0%

Нет, пока не нашел

0%

Узнайте стоимость индивидуальной работы

это быстро и бесплатно

Получите скидку

Оформите заказ сейчас и получите скидку 100 руб.!


Программная реализация разложения временного процесса в тригонометрический ряд

Тип Реферат
Предмет Информатика и программирование
Просмотров
1317
Размер файла
2 б
Поделиться

Ознакомительный фрагмент работы:

Программная реализация разложения временного процесса в тригонометрический ряд

Белорусскийнациональный технический университет

Кафедра информационныхсистем и технологий


ПОЯСНИТЕЛЬНАЯЗАПИСКА

ккурсовому проекту (работе)

подисциплине «Конструирование программ и языки программирования»

Тема: ”Программная реализация разложения временного процессав тригонометрический ряд”

Исполнитель:_______________________

                            (подпись)

Студент 2 курса 417318 группы

Руководитель: _____________________ Гурский Н.Н.

                            (подпись)

Минск 2010


Содержание

Оглавление

Введение

1.Математическая формулировка задачи

2.Описание программы

2.1Структурная схема программы

2.2Описание разработанного класса

2.3Описание реализации технологии COM

2.4Описание динамических библиотек

2.5Основные возможности программы

2.6Средства использования сервисов, предоставляемых Microsoft Office

3.Руководство пользователя

4.Методика испытаний

Заключение

Литература

Приложение

Файлпроекта VremRiad.dpr

Файлголовного модуля UnitMain.pas

Файлвывода графика UnitGraphic.pas

Файлреализации класса - UnitRiad.pas

Файлописания динамической библиотеки About.dpr

Файлописания динамической библиотеки Prompt.dpr

Файлпроекта COM-сервера – MyServer.dpr

Файлописания COM- класса – UComRiad.pas


Введение

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

Временной ряд — этоупорядоченная (по времени) последовательность значений некоторой произвольнойпеременной величины. Каждое отдельное значение данной переменной называетсяотсчётом временного ряда. Тем самым, временной ряд существенным образомотличается от простой выборки данных.

Анализ временных рядов —совокупность математико-статистических методов анализа, предназначенных длявыявления структуры временных рядов и для их прогноза. Сюда относятся, вчастности, методы регрессионного анализа. Выявление структуры временного ряданеобходимо для того, чтобы построить математическую модель того явления,которое является источником анализируемого временного ряда. Прогноз будущихзначений временного ряда используется при принятии решений, например, вэкономике.

Временные ряды состоят издвух элементов:

·         периода времени,за который или по состоянию на который приводятся числовые значения;

·         числовых значенийтого или иного показателя, называемых уровнями ряда.

Данная программапозволяет получить численные значения, описываемые следующей функциональнойзависимостью


при заданных начальныхданных

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

Для разработки программыбыла выбрана среда визуального проектирования Borland Delphi 7.0. Она позволяетза короткий промежуток времени и с наименьшими затратами физических иумственных сил создавать прикладные программы различной направленности,обеспечивая при этом наличие дружественного оконного интерфейса. Указанные (атакже ряд других) преимущества среды Delphi 7.0. обуславливают широкое еёиспользование при создании программного обеспечения разнообразного назначения.


1.Математическая формулировка задачи

Разложения временного процесса в тригонометрический ряд осуществляетсяпри вычислении численных значений при использовании следующей функциональнойзависимости:

Начальные данные:

Вычисления необходимо провести для трех значений :

  

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


2.Описание программы

 

2.1 Структурная схема программы

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

Рисунок-2.1. Структурнаясхема связей модулей программы

2.2 Описаниеразработанного класса

В результате анализапредметной области для её описания и моделирования был разработан класс TRiad, инкапсулирующий поля, методы исвойства, применимые к рассматриваемому объекту.

TRiad = class//класс

private

IniFile :TIniFile; //Объект Ini-файла

w: integer;

public

ConstructorCreate(AIniFileName : string);

Destructor Destroy;

procedureGraphic(AChart:TChart); //Постоение графика

procedureTable(AStringGrid:TStringGrid); //Вывод в таблицу

procedureWriteToIniFile; //Запись в Ini-файл

procedureReadFromIniFile; //Чтение из Ini-файла

function GetW: integer; //Получить w

procedureSetW; //Установить w

functionF(w:integer;t:extended):extended;//Вычисление суммы

//property ww: integer read GetW write SetW;

private

end;

Назначение полей иинкапсулированных в классе процедур и функций (методов) приведено вкомментариях. Описание и реализация класса структурно оформлено в отдельном Unit – UnitRiad. Используемые секции public и private определяют области видимости элементов класса. Так,видно, что все поля класса являются полностью закрытыми, а доступ к ниморганизуется с помощью методов и свойств.

 

2.3 Описание реализации технологии COM

В соответствии стребованиями на разработку данной курсовой работы была также реализованавозможность экспорта методов созданного класса с помощью технологии COM. Дляэтого был создан сервер в виде DLL –программный модуль MyServer.

libraryMyServer;

{ Importantnote about DLL memory management: ShareMem must be the first unit in yourlibrary's USES clause AND your project's (select Project-View Source) USESclause if your DLL exports any procedures or functions that pass strings asparameters or function results. This applies to all strings passed to and fromyour DLL--even those that are nested in records and classes. ShareMem is theinterface unit to the BORLNDMM.DLL shared memory manager, which must bedeployed along with your DLL. To avoid using BORLNDMM.DLL, pass stringinformation using PChar or ShortString parameters. }

uses

 SysUtils,

 ComServ,

 UComRiad in'UComRiad.pas',

 UCom_Tlb in'UCom_Tlb.pas',

 Classes,

 MyServer_TLBin 'MyServer_TLB.pas';

exports

DllGetClassObject,

DllCanUnloadNow,

DllRegisterServer,

DllUnregisterServer;

{$R *.TLB}

{$R *.res}

begin

end.

Этот сервер позволяетсоздать COM-объект, описание класса которого находится в модуле UСomRiad. Следует заметить, что данный классполностью соответствует, приведенному в п.2.2 классу TRiad и имеет и такое же название, т.е. он является его копией,за исключение конструктора Create, который заменен обычной процедурой.Непосредственный доступ к открытым элементам COM-класса осуществляется спомощью интерфейса IcomRiad,описанного в модуде UCom_Tlb.

 

2.4 Описание динамических библиотек

При разработке приложениябыли реализованы 2 динамические библиотеки.

Динамическая библиотека Prompt.dll содержит заставку, появляющуюся после запускапрограммы, но до появления главного окна.

Библиотека содержит 1экспортируемую процедуру ShowPrompt, служащую для отображения формы.

libraryPrompt;

{ Importantnote about DLL memory management: ShareMem must be the first unit in yourlibrary's USES clause AND your project's (select Project-View Source) USESclause if your DLL exports any procedures or functions that pass strings asparameters or function results. This applies to all strings passed to and fromyour DLL--even those that are nested in records and classes. ShareMem is theinterface unit to the BORLNDMM.DLL shared memory manager, which must bedeployed along with your DLL. To avoid using BORLNDMM.DLL, pass stringinformation using PChar or ShortString parameters. }

uses

 SysUtils,

 Classes,

 Windows,

 UnitPrompt in'UnitPrompt.pas' {FormPrompt};

{$R *.res}

//Показатьзаставку

procedureShowPrompt(AOwner:TComponent);

var

Time:extended;

Form:TFormPrompt;

begin

Form:=TFormPrompt.Create(AOwner);//Создать форму

Time:=GetTickCount/1000; //Запомнить время

Form.Show; //Показать форму

Form.Repaint; //Перерисовать форму

//Пока не вышел лимитвремени - ничего не делать

whileGetTickCount/1000<Time+4 do;

Form.Close; //Закрытьформу

Form.Free; //Уничтожить форму

end;

exports ShowPrompt;

begin

end.

Библиотека About.dll содержит форму с информацией о программе.

library About;

uses

SysUtils,

Classes,

Forms,

UnitAbout in'UnitAbout.pas' {FormAbout};

{$R *.res}

//Показатьформу

procedureShowAbout(AOwner:TComponent);

var

Form:TFormAbout;

begin

Form:=TFormAbout.Create(AOwner);//Создать форму

Form.ShowModal; //Показать форму

Form.Free; //Уничтожить форму

end;

exportsShowAbout;

begin

end.

Библиотека содержитэкспортируемую функцию ShowAbout для отображения формы.

 

2.5 Основные возможности программы

Программа начинается сотображения оригинальной заставки (содержится в Prompt.dll), а затем на экранепоявляется главное окно программы (модуль UnitMain). Главный модуль управляетработой всех других модулей в соответствии с запросами пользователя.

Он содержит:

·         Вызов окна «Опрограмме»;

·         Вызовпрезентации;

·         Передачу данных вWord и Excel;

·         Вызов формы«График»;

·         Вызов окнапомощи;

·         Сохранение данныхв Ini-файлах;

·         Использованиевозможностей разработанного COM-сервера;

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

Окно «О программе»содержит краткую информацию о приложении.

Окно «График» служит дляотображения информации в графической форме – в виде графиков.

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

Процесс логическоговзаимодействия пользователя c программой, назначение элементов главного окнаописаны в «Руководстве пользователя».

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

2.6 Средстваиспользования сервисов, предоставляемых Microsoft Office

Кроме процедур и функций,описанных в классах, программа обеспечивает взаимодействие с серверамиавтоматизации приложений Microsoft Office. Так, следующие процедуры головногомодуля программы позволяют автоматически производить запуск MS Word, MS Excel,Power Point и передавать им текстовую, табличную и графическую информацию сцелью создания отчетов или использование ее для дальнейшей обработки.

1. ProcedureTFormMain.ReportExcel(AStringGrid : TStringGrid). Данная процедура обеспечивает передачуданных в Excel. Для формирования таблицы необходимо передать ссылку накомпонент типа TStringGrid, на основе данных которого будут заполнены ячейки вExcel. Рисунок, помещаемый в отчет, совпадает с текущим видом графика.

2. Procedure TFormMain.ReportWord(AStringGrid:TStringGrid). Процедура позволяет создать отчет,принятый в Word.

3. ProcedureTFormMain.PresentationClick(Sender: TObject). Активизация данной процедуры позволяет запуститьпрезентацию, которая может использоваться в рекламных и учебных целях.


3.Руководство пользователя

Для активизации программынеобходимо вызвать файл VremRiad.exe.При этом, на экране появится заставка, показанная на рисунке 3.1.

Рисунок 3.1 - Заставкапрограммы

После того как заставкачерез несколько секунд исчезнет, появится главное окно программы (см. рисунок3.2).


Рисунок 3.2 - Главноеокно программы

Как видно, данное окносостоит из следующих частей:

·         Главного меню;

·         Панелиинструментов;

·         Области вводаданных;

·         Области выводаинформации;

·         Управляющихкнопок.

Пункты главного менюпоказаны на рисунке 3.3.

Рисунок 3.3 - Главноеменю программы

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


Рисунок 3.4 - Пункт меню«Файл»

При выборе пункта «Выход»происходит завершение работы приложения.

Пункт меню «Вычислить»обеспечивает разложение временного процесса в тригонометрический ряд призаданном w и вывод соответствующей информации. Если w не задано, выводитсясообщение об ошибке (рисунок 3.5).

Рисунок 3.5 – Сообщениеоб ошибке

Пункты «Отчет в Word» и«Отчет в Excel» обеспечивают по желанию пользователяформирование результатов расчетов в виде текстового документа в стиле редактораMs Word или в табличном процессоре MS Excel соответсвенно.

На рисунке 3.6 приведеныкоманды, вызываемые пунктом главного меню «Помощь».

Рисунок 3.6 - Пункт меню«Помощь»


При выборе пункта меню«Презентация» начинается просмотр возможностей программы под управлением PowerPoint.

Выбор пункта меню«Справка» приводит к появлению окна помощи, содержащим сведения о работе спрограммой (см. рисунок 3.7)

Рисунок 3.7 - Окносправочной системы

Выбор пункта главного меню«О программе» позволяет получить на экране краткие сведения о программе в виде,показанном на рисунке 3.8.

Рисунок 3.8 - Окно«About»

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

Рисунок 3.9 - Панельинструментов

Также имеется четыреуправляющие кнопки, показанные на рисунке 3.10.

Рисунок 3.10 -Управляющие кнопки

Кнопка «Вычислить»обеспечивает расчет состояния системы и вывод соответствующей информации.Кнопка «График» обеспечивает появление окна с графиком, т.е. имеетсявозможность просмотра результатов разложения временного процесса втригонометрический ряд при заданном значении w. Можно просмативать сразу какнесколько графиков (рисунок 3.11), так и один для определенного значения w (рисунок3.12).


Рисунок 3.11 – График разложениявременного процесса в тригонометрический ряд при заданном значении w=3

Рисунок 3.12 – Графикразложения временного процесса в тригонометрический ряд при заданном значенииw=3 и w=1

Кнопка «Очистить» очищаетобласть построения графиков. Для закрытия окна используется кнопка «Закрыть».

Для выхода из программыследует нажать кнопку «Выход».


4.Методика испытаний

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

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

Для демонстрацииработоспособности программы необходимо провести ряд испытаний с различныминачальными условиями. Для обеспечения нормальной работы программы требуетсяналичие соответствующих DLL, а также приложений Word, Excel, PowerPoint.

Для использованияCOM-сервера, он должен быть предварительно зарегистрирован в системе. Тестовыепримеры выполнялись в среде операционной системы Windows XP Profesional прииспользовании процессора Intel Pentium 4 2.4 GHz и разрешении экрана 1024*768.Для работы с программой необходимо также наличие клавиатуры и манипулятора типа«мышь».

Испытание проведем сначальными данными, указанными в задании.

Начальные данные: при w=3

Результаты этоговычислительного эксперимента приведены на рисунках 4.1, 4.2.


Рисунок 4.1 -Тестоваятаблица №1

Рисунок 4.2 - Тестовыйграфик №1

Если w не выбрано,выводится сообщение об ошибке (рисунок 3.5).

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

Начальные данные: при w=5

Полученные результаты

Рисунок 4.3 - Тестовыйграфик №2


Рисунок 4.4 - Тестоваятаблица №2

Таким образом,проведенное тестирование программы не выявило сбойных ситуаций инекорректностей в ее работе. Следует считать, что в целом программапротестирована, отвечает поставленным требованиям и вполне работоспособна.


Заключение

В ходе выполнениякурсовой работы:

·         были закрепленызнания по курсу «Конструирование программ и языки программирования»;

·         приобретен опытпри разработке объектно-ориентированных программ;

·         изучены принципысоздания динамических библиотек;

·         изучены иреализованы способы создания клиент-серверных приложений на базеCOM-технологий;

·         освоены методыпередачи данных между приложениями;

·         изученывозможности создания справочной системой высокой степени сложности и различныхформатов.

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

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

Таким образом, разработанноев ходе выполнения курсовой работы приложение является законченным программнымпродуктом.

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


Литература

1.   Фаронов В.В. Delphi 6. Учебный курс.-М.: Издатель Молгачева С.В.,2001.-672с.

2.   Елмакова Н., Трепалин С., Тенцер А. Delphi 6 и технология COM.-СПб.: Питер, 2002. – 640 с.

3.   Федоров А.. Delphi 5.0 для всех. -М.:Тоо фирма “КомпьютерПресс”, 1998. - 464 с.

4.   Марко Кэнту. Delphi 5 для профессионалов.-СПб.: Питер. 2001. – 944 с.

5.   Бобровский С. Delphi 5: учебный курс- СПб: Издательство«Питер», 2000.- 640с.

6.   А.М.Епанешников, В.А.ЕпанешниковПрограммирование в среде Delphi.-М.:»ДиалогМИФИ», 1998.


Приложение

 

Файл проекта VremRiad.dpr

program VremRiad;

uses

 Forms,Windows,Classes,Dialogs,SysUtils,

 UnitMain in'UnitMain.pas' {Form1},

 UnitRiad in'UnitRiad.pas',

 UComRiad in'UComRiad.pas',

 UCom_Tlb in'UCom_Tlb.pas',

 UnitGraphicin 'UnitGraphic.pas' {FormGraphic},

 VremRiad_TLBin 'VremRiad_TLB.pas';

{$R *.TLB}

//******************************************

Type

//Процедурный тип дляфункции, вызываемой из DLL

 TProc=procedure(AOwner:TComponent);

 Var

 Handle :LongWord; //Дескриптор DLL

 ShowPrompt : tproc; //Переменная для функции

//*******************************************

 {$R *.res}

begin

 Application.Initialize;

//Загрузкаиконки

Application.Icon.LoadFromFile('Prompt.ico');

//*****Загрузка библиотекии показ заставки******//

Handle:=LoadLibrary('Prompt.dll');

if Handle<> 0 then

begin

//Получить адрес функциииз библиотеки

@ShowPrompt:=GetProcAddress(Handle, PChar('ShowPrompt'));

ShowPrompt(Application);//Показать заставку

FreeLibrary(Handle);//Удалить библиотеку

end

elseShowMessage('Не найдена библиотека Prompt.dll');

//***********************************************//

 Application.CreateForm(TForm1,Form1);

 Application.CreateForm(TFormGraphic,FormGraphic);

 Application.Run;

end.

Файлголовного модуля UnitMain.pas

unit UnitMain;

interface

uses

 Windows,Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs,StdCtrls, Menus, ToolWin, ComCtrls, XPMan, ImgList, Grids,

IniFiles,Clipbrd, WordXP, Math, ShellAPI, ExtCtrls, msppt8,

UCom_Tlb,ComObj, MSPpt2000, PowerPointXP, Activex, OleServer,

 Buttons;

type

 TForm1 =class(TForm)

 Panel1:TPanel;

 Panel2:TPanel;

 Label1:TLabel;

 Label2:TLabel;

 Label3:TLabel;

 Label4:TLabel;

 Label5: TLabel;

 Label6:TLabel;

 Label7:TLabel;

 Label8:TLabel;

 RadioGroup1:TRadioGroup;

 BitBtn1:TBitBtn;

 Panel3:TPanel;

 BitBtn2:TBitBtn;

 MainMenu1:TMainMenu;

 N1:TMenuItem;

 N2:TMenuItem;

 N3:TMenuItem;

 N4:TMenuItem;

 N6:TMenuItem;

 BitBtn3:TBitBtn;

 N7:TMenuItem;

 StringGrid1:TStringGrid;

 Label9:TLabel;

 Label10:TLabel;

 BitBtn4:TBitBtn;

 PowerPointApplication1:TPowerPointApplication;

 Presentation:TSpeedButton;

 N8:TMenuItem;

 Word1:TSpeedButton;

 Excel1:TSpeedButton;

 N9:TMenuItem;

 EXcel2:TMenuItem;

 SpeedButton1:TSpeedButton;

 SpeedButton2:TSpeedButton;

 procedureBitBtn3Click(Sender: TObject);

 procedureFormActivate(Sender: TObject);

 procedureBitBtn1Click(Sender: TObject);

 procedureBitBtn4Click(Sender: TObject);

 procedureBitBtn2Click(Sender: TObject);

 procedureN4Click(Sender: TObject);

 procedurePresentationClick(Sender: TObject);

 procedureWord1Click(Sender: TObject);

 procedureExcel1Click(Sender: TObject);

 procedureSpeedButton2Click(Sender: TObject);

 // ProcedureTFormMain.PresentationClick(Sender: TObject);

 

 private

 { Privatedeclarations }

 public

IniFileName :string; //Имя файла инициализации

procedureReportExcel(AStringGrid : TStringGrid); //Передать отчет в Excel

procedureReportWord (AStringGrid : TStringGrid); //Передать отчет в Word

 { Publicdeclarations }

 end;


var

 Form1:TForm1;

 Flag : bool; //Флаг определения вида используемого объекта

 const x=1;

 const P=500;

 

 

implementation

uses UnitRiad,UnitGraphic;

{$R *.dfm}

procedureTForm1.BitBtn3Click(Sender: TObject);

begin

 Close;

end;

procedureTForm1.FormActivate(Sender: TObject);

 var i:integer;

begin

 //По умолчаниюустановить работу с обычным (классическим) объектом

 Flag:= false;

 //Имя Ini-файла сохранения параметров

 IniFileName:=GetCurrentDir+'Riad.ini';

 //Создать обычный объект

 Riad:= TRiad.Create(IniFileName);

 //Считать данные из Ini-файла

 Riad.ReadFromIniFile;

 //Вычисление и выводданных в таблицу

 Riad.Table(StringGrid1);

 StringGrid1.Cells[0,0]:='Номер';

 StringGrid1.Cells[1,0]:='Время(с)';

 StringGrid1.Cells[2,0]:='F{t}при w=1';

 StringGrid1.Cells[3,0]:='F{t}при w=3';

 StringGrid1.Cells[4,0]:='F{t}при w=5';

 for i:=1 to201 do

 StringGrid1.Cells[0,i]:=IntToStr(i);

 for i:=0 to201 do

 begin

 StringGrid1.Cells[1,i+1]:=FloatToStr(0.5*i)

 end;

 label10.Caption:='';

end;

procedureTForm1.BitBtn1Click(Sender: TObject);

 vari:integer;

 begin

 Riad.SetW();

 //Вычисление и вывод данных в таблицу

 Riad.Table(StringGrid1);

 end;

procedureTForm1.BitBtn4Click(Sender: TObject);

var i:integer;

begin

 for i:=0 to201 do

 begin

 StringGrid1.Cells[2,i+1]:='';

 StringGrid1.Cells[3,i+1]:='';

 StringGrid1.Cells[4,i+1]:='';

 end;

end;

procedureTForm1.BitBtn2Click(Sender: TObject);

begin

 

 FormGraphic.Show;

end;

procedureTForm1.N4Click(Sender: TObject);

Type

//Процедурный тип длявызова процедуры из DLL

TProc =procedure(AOwner:TComponent);

var

Handle :LongInt; //Дескриптор библиотеки

ShowAbout : TProc; //Переменая для вызова функции из DLLbegin

begin

//Получить значениедескриптора загруженной библиотеки

Handle:=LoadLibrary('About.dll');

//Проверить существованиебиблиотеки

if Handle = 0then

begin

ShowMessage('Библиотекане найдена : About.dll');

exit;

end;

//Получить адресвызываемой функции

@ShowAbout:=GetProcAddress(Handle, PChar('ShowAbout'));

//Вызов функции,показывающей форму About

ShowAbout(Application);

FreeLibrary(Handle);//Выгрузка библиотеки

end;

procedureTForm1.PresentationClick(Sender: TObject);

var

name : string;

pw : TOleEnum;

begin

 //Запускпрезетации

Name:=ExtractFileDir(Application.ExeName) + 'Vremennoj process.ppsx';

PowerPointApplication1.Activate;

PowerPointApplication1.Presentations.Open(Name,pw, pw, pw);

PowerPointApplication1.Presentations.Item(1).SlideShowSettings.Run;

//Другойспособ запуска

//ShellExecute(Application.MainForm.Handle,PChar('Open'),

//PChar('Riad.pps'), NIL, PChar(''), sw_ShowNormal);

end;//TFormMain.PresentationClick

procedureTForm1.Word1Click(Sender: TObject);

begin //Отчетв Word

ReportWord(StringGrid1);

end;//TFormMain.Word1Click

ProcedureTForm1.ReportExcel(AStringGrid : TStringGrid);

//Отчет вExcel

var

Excel :variant;

WorkBook :variant; //Рабочая книга

i, j :integer;

begin

//Cоздатьформу для графика

FormGraphic:=TFormGraphic.Create(Form1);

//СоздатьСоm-объект

Excel:=CreateOleObject('Excel.Application');

//Отключить реакцию навнешние события-для ускорения процесса передачи данных

Excel.Application.EnableEvents:=false;

//Добавитьрабочую книгу

WorkBook:=Excel.WorkBooks.Add;

//Изменениеширины столбцов

for j:=0 toAStringGrid.ColCount do

WorkBook.WorkSheets[1].Columns[j+1].ColumnWidth:=10;

//Вывод строки

WorkBook.WorkSheets[1].Cells[1,1]:='Отчет о колебаниях стержня';

//Заполнение ячеектаблицы Excel значениями из StringGrid

//Нумерация ячеек в Excel начинается с 1 и идет в форматестрока-столбец

for i:= 1 toAStringGrid.RowCount + 1 do

for j:= 0 toAStringGrid.ColCount do

WorkBook.WorkSheets[1].Cells[i+1,j+1]:= AStringGrid.Cells[j, i-1];


//Вставитизображение графика в Excel

WorkBook.WorkSheets[1].Shapes.AddPicture(GetCurrentDir+'PictureWord.bmp',

True, True, 0,(AStringGrid.RowCount+2)*12.5+10, FormGraphic.Chart1.Width*0.8,

FormGraphic.Chart1.Height*0.8);

//Уничтожитьформу

FormGraphic.Release;

FormGraphic:=NIL;

//ПоказатьExcel

Excel.Visible:=true;

end;//TFormMain.ReportExcel

ProcedureTForm1.ReportWord(AStringGrid : TStringGrid);

//Отчет в Word

var

i,j,k :integer;

a,b,c :OleVariant;

wa :TWordApplication; //WordApplication

wd :TWordDocument; //WordDocument

begin

//Создатьформу для графика

FormGraphic:=TFormGraphic.Create(Form1);

//Создатьcom-объект

wa:=TWordApplication.Create(Form1);

//Подключиться к серверу Word

wa.Connect;

//Добавить новый документ

wa.Documents.Add(EmptyParam, EmptyParam, EmptyParam, EmptyParam);

wd:=TWordDocument.Create(Form1);

wd.ConnectTo(wa.ActiveDocument);

//Отменитьпроверку правописания

wa.Options.CheckSpellingAsYouType:=False;

//Отменитьпроверку орфографии

wa.Options.CheckGrammarAsYouType:=False;

a:= 0;

b:= 0;

wd.Range.InsertAfter('Отчет');

c:=Length(wd.Range.Text) - 1;

a:= c;

b:= c + 10;

//Добавить таблицу

wd.Tables.Add(wd.Range(a),AStringGrid.RowCount,

AStringGrid.ColCount,EmptyParam, EmptyParam);

k:= 1;

//Перенести данные из StringGrid в таблицу

for i:= 1 toAStringGrid.RowCount do

for j:= 1 toAStringGrid.ColCount do

wd.Tables.Item(k).Cell(i,j).Range.Text:=AStringGrid.Cells[j-1, i-1];

//Загрузитьизображение в Image

FormGraphic.Image1.Picture.LoadFromFile('PictureWord.bmp');

//Поместитьизображение в буфер обмена

Clipboard.Assign(FormGraphic.Image1.Picture);

c:=Length(wd.Range.Text) - 1;

a:= c;

//Вставить изображение избуфера обмена

wa.Selection.Paste;

//ПоказатьWord

wa.Visible:=true;

//Уничтожитьформу

FormGraphic.Release;

FormGraphic:=NIL;

end;//TFormMain.ReportWord

procedureTForm1.Excel1Click(Sender: TObject);

begin

 ReportExcel(StringGrid1);

 end;

procedureTForm1.SpeedButton2Click(Sender: TObject);

begin

 WinExec('hh.exe1.chm',SW_SHOW);

end;

end.

Файлвывода графика UnitGraphic.pas

unitUnitGraphic;

interface

uses

 Windows,Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs,TeEngine, Series, StdCtrls, ExtCtrls, TeeProcs, Chart, XPMan,

 TeeFunci,Buttons;

type

 TFormGraphic= class(TForm)

 Chart1:TChart;

 Button1:TButton;

 XPManifest1:TXPManifest;

 Series1:TLineSeries;

 Series2:TLineSeries;

 TeeFunction1:TAddTeeFunction;

 Series3:TLineSeries;

 Image1:TImage;

 BitBtn1:TBitBtn;

 BitBtn2:TBitBtn;

 BitBtn3:TBitBtn;

 BitBtn4:TBitBtn;

 procedureButton1Click(Sender: TObject);

 procedureBitBtn1Click(Sender: TObject);

 procedureBitBtn2Click(Sender: TObject);

 procedureBitBtn3Click(Sender: TObject);

 procedureBitBtn4Click(Sender: TObject);

 private

 { Privatedeclarations }

 public

 { Publicdeclarations }

 end;

var

 FormGraphic:TFormGraphic;

implementation

uses UnitRiad;


{$R *.dfm}

procedureTFormGraphic.Button1Click(Sender: TObject);

begin

Chart1.Series[0].Clear;

Chart1.Series[1].Clear;

Chart1.Series[2].Clear;

Close;

end;//TFormGraphic.Button1Click

procedureTFormGraphic.BitBtn1Click(Sender: TObject);

begin

 Riad.Graphic1(FormGraphic.Chart1);

end;

procedureTFormGraphic.BitBtn2Click(Sender: TObject);

begin

 Riad.Graphic2(FormGraphic.Chart1);

end;

procedureTFormGraphic.BitBtn3Click(Sender: TObject);

begin

 Riad.Graphic3(FormGraphic.Chart1);

end;

procedureTFormGraphic.BitBtn4Click(Sender: TObject);

begin

Chart1.Series[0].Clear;

Chart1.Series[1].Clear;

Chart1.Series[2].Clear;

end;

end.

end.

Файл реализациикласса - UnitRiad.pas

unit UnitRiad;

interface

uses Chart,Series, Math, Grids, SysUtils, Types, Graphics, IniFiles, Messages, Dialogs,StdCtrls, Variants, Classes, Controls, Forms,

 ExtCtrls,Buttons, Menus;

Type

TRiad = class//класс

private

IniFile :TIniFile; //Объект Ini-файла

w: integer;

public

ConstructorCreate(AIniFileName : string);

DestructorDestroy;

procedureGraphic1(AChart:TChart); //Постоение графика

procedureGraphic2(AChart:TChart); //Постоение графика

procedureGraphic3(AChart:TChart); //Постоение графика

procedureTable(AStringGrid:TStringGrid); //Вывод в таблицу

procedureWriteToIniFile; //Запись в Ini-файл

procedureReadFromIniFile; //Чтение из Ini-файла

function GetW: integer; //Получить w

procedureSetW; //Установить w

functionF(w:integer;t:extended):extended;//Вычисление суммы

//property ww: integer read GetW write SetW;

private

end;

var

Riad : TRiad;//Объект

implementation

uses UnitMain,UnitGraphic;

const P=500;

const x=1;

constTimeStart=0; //Время начала отсчета

const TimeEnd=100; //Время окончания отсчета

const TimeStep=0.5; //Шаг дискретизация времени

ConstructorTRiad.Create(AIniFileName : string);

begin

//Создатьобъект Ini-файла

IniFile:=TIniFile.Create(AIniFileName);

end;//TRiad.Create

DestructorTRiad.Destroy;

begin

//Удалить из Heap объект Ini-файла

ifAssigned(IniFile) then

begin

IniFile.Free;

IniFile:= NIL;

end;

end;//TRiad.Create

procedureTRiad.Graphic1(AChart : TChart);

//Построениеграфика

var

time :extended;

Y: extended;

begin

Time:=TimeStart;

AChart.Series[0].Clear;//Очистить Series[0]

AChart.BottomAxis.Increment:=Floor((TimeEnd - TimeStart) / 5);

//Занестизначения в Series

while(time<= TimeEnd) do

begin

Y:= F(1,time);

AChart.Series[0].AddXY(time,Y);

time:= time +TimeStep / 4;

end;

end;//TRiad.Graphic1

procedureTRiad.Graphic2(AChart : TChart);

//Построениеграфика

var

time :extended;

Y: extended;

begin

Time:=TimeStart;

AChart.Series[1].Clear;//Очистить Series[0]

AChart.BottomAxis.Increment:=Floor(( TimeEnd- TimeStart) / 5);

//Занестизначения в Series

while(time<= TimeEnd) do

begin

Y:= F(3,time);

AChart.Series[1].AddXY(time,Y);

time:= time +TimeStep / 4;

end;

end;//TRiad.Graphic2

procedureTRiad.Graphic3(AChart : TChart);

//Построениеграфика

var

time :extended;

Y: extended;

begin

Time:=TimeStart;

AChart.Series[2].Clear;//Очистить Series[0]

AChart.BottomAxis.Increment:=Floor((TimeEnd - TimeStart) / 5);

//Занестизначения в Series

while(time<= TimeEnd) do

begin

Y:= F(5,time);

AChart.Series[2].AddXY(time,Y);

time:= time +TimeStep / 4;

end;

end;//TRiad.Graphic3

functionTRiad.F(w : integer;t : extended) : extended;

//вычисление функции

var

j:integer;

begin

 F:=(2*P/x)*(sin(w*t)-1/2*sin(2*w*t)+1/3*sin(3*w*t)-1/4*sin(4*w*t))

end;//TRiad.F

procedureTRiad.Table(AStringGrid : TStringGrid);

//Вывод информации втаблицу

var

k : integer;

time :extended;

y: extended;

begin

k:= 0;

time:=TimeStart;

 if w=1 then

while (time<= TimeEnd) do

begin

inc(k);

y:= F(w,time);

Form1.StringGrid1.Cells[2,k]:=FloatToStrF(y , ffFixed, 5, 3);

time:= time +TimeStep;

end

 else if w=3then

while (time<= TimeEnd) do

begin

inc(k);

y:= F(w,time);

Form1.StringGrid1.Cells[3,k]:=FloatToStrF(y , ffFixed, 5, 3);

time:= time +TimeStep;

end

 else if w=5then

while (time<= TimeEnd) do

begin

inc(k);

y:= F(w,time);

Form1.StringGrid1.Cells[4,k]:=FloatToStrF(y , ffFixed, 5, 3);

time:= time +TimeStep;

end ;

end;//TRiad.Table

procedureTRiad.WriteToIniFile;

//запись вIni-файл

begin

IniFile.WriteInteger('Parameters','W', W);

IniFile.UpdateFile;//очистка буфера и запись файла надиск

end;//TRiad.WriteToIniFile

procedureTRiad.ReadFromIniFile;

//чтение изIni-файла

begin

W:=IniFile.ReadInteger('Parameters', 'W', w);

end;//TRiad.ReadFromIniFile

functionTRiad.GetW :integer;

begin

 result:= W;

end;//TRiad.GetW

procedureTRiad.SetW;

begin

ifForm1.RadioGroup1.ItemIndex=-1 then

 MessageDlg(Pchar('Невыбрано значение w!!!'),mtError,[mbOk],0);

 ifForm1.RadioGroup1.ItemIndex =0 then

 begin

 Form1.Label10.Caption:='1';

 w:=1;

 end

 else ifForm1.RadioGroup1.ItemIndex =1 then

 begin

 Form1.label10.Caption:='3';

 w:=3;

 end

 else

 begin

 Form1.label10.Caption:='5';

 w:=5;

 end ;

 end;//TRiad.SetW

end.

Файлописания динамической библиотеки About.dpr

library About;

{ Importantnote about DLL memory management: ShareMem must be the first unit in yourlibrary's USES clause AND your project's (select Project-View Source) USESclause if your DLL exports any procedures or functions that pass strings asparameters or function results. This

 applies toall strings passed to and from your DLL--even those that are nested in recordsand classes. ShareMem is the interface unit to the BORLNDMM.DLL shared memorymanager, which must be deployed along with your DLL. To avoid using BORLNDMM.DLL,pass string information using PChar or ShortString parameters. }

uses

 SysUtils,

 Classes,

 Forms,

 UnitAbout in'UnitAbout.pas' {FormAbout};

{$R *.res}

 //показать форму

procedureShowAbout(AOwner:TComponent);

var

Form:TFormAbout;

begin

Form:=TFormAbout.Create(AOwner);//создать форму

Form.ShowModal;//показать форму

Form.Free; //уничтожитьформу

end;

exportsShowAbout;

begin

end.

unitUnitAbout;

interface

uses

 Windows,Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs,StdCtrls, ExtCtrls, XPMan, Buttons;

type

 TFormAbout =class(TForm)

 Image1:TImage;

 Label1:TLabel;

 Label2:TLabel;

 Label3:TLabel;

 Label4:TLabel;

 BitBtn1:TBitBtn;

 Label5:TLabel;

 XPManifest1:TXPManifest;

 procedureBitBtn1Click(Sender: TObject);

 private

 { Privatedeclarations }

 public

 { Publicdeclarations }

 end;

var

 FormAbout:TFormAbout;

implementation

{$R *.dfm}

procedureTFormAbout.BitBtn1Click(Sender: TObject);

begin

 Close;

end;

end.

Файл описания динамической библиотеки Prompt.dpr

libraryPrompt;

{ Importantnote about DLL memory management: ShareMem must be the

 first unit inyour library's USES clause AND your project's (select

 Project-ViewSource) USES clause if your DLL exports any procedures or

 functionsthat pass strings as parameters or function results. This

 applies toall strings passed to and from your DLL--even those that

 are nested inrecords and classes. ShareMem is the interface unit to

 theBORLNDMM.DLL shared memory manager, which must be deployed along

 with yourDLL. To avoid using BORLNDMM.DLL, pass string information

 using PCharor ShortString parameters. }

uses

 SysUtils,

 Classes,

 Windows,

 UnitPrompt in'UnitPrompt.pas' {FormPrompt};

{$R *.res}

//Показать заставку

procedureShowPrompt(AOwner:TComponent);

var

Time:extended;

Form:TFormPrompt;

begin

Form:=TFormPrompt.Create(AOwner);//Создать форму

Time:=GetTickCount/1000; //Запомнитьвремя

Form.Show; //Показатьформу

Form.Repaint; //Перерисоватьформу

//Пока не вышел лимитвремени - ничего не делать

whileGetTickCount/1000<Time+4 do;

Form.Close; //Закрыть форму

Form.Free; //Уничтожитьформу

end;

exportsShowPrompt;

begin

end.

unitUnitPrompt;

interface

uses

 Windows,Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

 Dialogs,ExtCtrls, XPMan;

type

 TFormPrompt =class(TForm)

 XPManifest1:TXPManifest;

 Image1:TImage;

 private

 { Privatedeclarations }

 public

 { Publicdeclarations }

 end;

var

 FormPrompt:TFormPrompt;

implementation

{$R *.dfm}

end.

Файл проекта COM-сервера – MyServer.dpr

libraryMyServer;

{ Importantnote about DLL memory management: ShareMem must be the first unit in yourlibrary's USES clause AND your project's (select Project-View Source) USESclause if your DLL exports any procedures or functions that pass strings asparameters or function results. This applies to all strings passed to and fromyour DLL--even those that are nested in records and classes. ShareMem is theinterface unit to the BORLNDMM.DLL shared memory manager, which must bedeployed along with your DLL. To avoid using BORLNDMM.DLL, pass stringinformation using PChar or ShortString parameters. }

uses

 SysUtils,

 ComServ,

 UComRiad in'UComRiad.pas',

 UCom_Tlb in'UCom_Tlb.pas',

 Classes,

 MyServer_TLBin 'MyServer_TLB.pas';

exports

DllGetClassObject,

DllCanUnloadNow,

DllRegisterServer,

DllUnregisterServer;

{$R *.TLB}

{$R *.res}

begin

end.


Файл описанияCOM- класса – UComRiad.pas

unit UComRiad;

{$WARNSYMBOL_PLATFORM OFF}

interface

uses

Windows,ActiveX, Classes, ComObj, Chart, Grids, Math, SysUtils, IniFiles,

UCom_Tlb,ExtCtrls;

type

TRiad =class(TComObject, IComRiad)

protected

IniFile :TIniFile; //Объект Ini-файла

w : integer;

public

ProcedureCreate(AIniFileName : string); stdcall;

DestructorDestroy;

procedureGraphic(AChart:TChart); stdcall; //Постоение графика

procedureTable(AStringGrid:TStringGrid); stdcall; //Вывод в таблицу

procedureWriteToIniFile; stdcall; //Запись в Ini-файл

procedureReadFromIniFile; stdcall; //Чтение из Ini-файла

function GetW: integer; stdcall; //Получить w

procedureSetW; stdcall; //Установить w

functionF(w:integer; t:extended):extended;stdcall;//Вычисление суммы


private

end;

implementation

uses ComServ,Dialogs, Graphics, UnitMain;

const P=500;

const x=1;

constTimeStart=0; //Время началаотсчета

const TimeEnd=100;//Время окончания отсчета

const TimeStep=0.5; //Шагдискретизация времени

ProcedureTRiad.Create(AIniFileName : string);

begin

//Создать объектIni-файла

IniFile:=TIniFile.Create(AIniFileName);

end;//TRod.Create

DestructorTRiad.Destroy;

begin //Не используется

//Удалить из Heap объектIni-файла

ifAssigned(IniFile) then

begin

IniFile.Free;

IniFile:= NIL;

end;

end;//TRod.Create

procedureTRiad.Graphic(AChart : TChart);

//Построение графика

var

time :extended;

Y1, Y2 :extended;

begin

Time:=TimeStart;

AChart.Series[0].Clear;//Очистить Series[0]

AChart.Series[1].Clear;//Очистить Series[1]

AChart.BottomAxis.Increment:=Floor((TimeEnd - TimeStart) / 5);

//Занести значения в Series

while(time<= TimeEnd) do

begin

Y1:=F(w,time);

Y2:=F(w,time);

AChart.Series[0].AddXY(time,Y1);

AChart.Series[1].AddXY(time,Y2);

time:= time +TimeStep / 4;

end;

end;//TRiad.Graphic

functionTRiad.F(w : integer;t : extended) : extended;

//вычисление функции

var

j:integer;

begin

 F:=(2*P/x)*(sin(w*t)-1/2*sin(2*w*t)+1/3*sin(3*w*t)-1/4*sin(4*w*t))

end;//TRiad.F

procedureTRiad.Table(AStringGrid : TStringGrid);

//Вывод информации втаблицу

var

k : integer;

time :extended;

y: extended;

begin

k:= 0;

time:=TimeStart;

while (time<= TimeEnd) do

begin

inc(k);

y:= F(w,time);

Form1.StringGrid1.Cells[2,k]:=FloatToStrF(y , ffFixed, 5, 3);

time:= time +TimeStep;

end;

end;//TRiad.Table

procedureTRiad.WriteToIniFile;

//запись в Ini-файл

begin

IniFile.WriteInteger('Parameters','W', W);

IniFile.UpdateFile;//очисткабуфера и запись файла на диск

end;//TRiad.WriteToIniFile

procedureTRiad.ReadFromIniFile;

//чтение из Ini-файла

begin

W:=IniFile.ReadInteger('Parameters', 'W', w);

end;//TRiad.ReadFromIniFile


functionTRiad.GetW :integer;

begin

 result:= W;

end;//TRiad.GetW

procedureTRiad.SetW;

begin

ifForm1.RadioGroup1.ItemIndex=-1 then

 MessageDlg(Pchar('Не выбрано значение w!!!'),mtError,[mbOk],0);

 ifForm1.RadioGroup1.ItemIndex =0 then

 begin

 Form1.Label10.Caption:='1';

 w:=1;

 end

 else ifForm1.RadioGroup1.ItemIndex =1 then

 begin

 Form1.label10.Caption:='3';

 w:=3;

 end

 else

 begin

 Form1.label10.Caption:='5';

 w:=5;

 end ;

 end;//TRiad.SetW

initialization

TComObjectFactory.Create(ComServer,TRiad, Class_ServerRiad,

'ServerRiad','', ciMultiInstance, tmApartment);

end.

Файлбиблиотеки типов COM- класса – Ucom_Tlb.pas

unit UCom_Tlb;

interface

uses Chart,Grids, StdCtrls, ExtCtrls;

const

Class_ServerRiad:TGUID = '{1CB7B26E-5BAF-4BA7-8F17-EA174D7CD750}';

Type

IComRiad =interface

['{1326DD83-DB3E-4054-9572-CFB9EAE3FE95}']

ProcedureCreate(AIniFileName : string); stdcall;

procedureGraphic(AChart:TChart); stdcall; //Постоение графика

procedureTable(AStringGrid:TStringGrid); stdcall; //Вывод в таблицу

procedureWriteToIniFile; stdcall; //Запись в Ini-файл

procedureReadFromIniFile; stdcall; //Чтение из Ini-файла

function Getw: integer; stdcall; //Получить w

procedureSetw; stdcall; //Установить w

functionF(w:integer; t:extended):extended;stdcall;//Вычисление суммы

end;

implementation

end.


Нет нужной работы в каталоге?

Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.

Цены ниже, чем в агентствах и у конкурентов

Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит

Бесплатные доработки и консультации

Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки

Гарантируем возврат

Если работа вас не устроит – мы вернем 100% суммы заказа

Техподдержка 7 дней в неделю

Наши менеджеры всегда на связи и оперативно решат любую проблему

Строгий отбор экспертов

К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»

1 000 +
Новых работ ежедневно
computer

Требуются доработки?
Они включены в стоимость работы

Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован

avatar
Математика
История
Экономика
icon
159599
рейтинг
icon
3275
работ сдано
icon
1404
отзывов
avatar
Математика
Физика
История
icon
156450
рейтинг
icon
6068
работ сдано
icon
2737
отзывов
avatar
Химия
Экономика
Биология
icon
105734
рейтинг
icon
2110
работ сдано
icon
1318
отзывов
avatar
Высшая математика
Информатика
Геодезия
icon
62710
рейтинг
icon
1046
работ сдано
icon
598
отзывов
Отзывы студентов о нашей работе
63 457 оценок star star star star star
среднее 4.9 из 5
Филиал государственного бюджетного образовательного учреждения высшего образования Московской област
Спасибо Елизавете за оперативность. Так как это было важно для нас! Замечаний особых не бы...
star star star star star
РУТ
Огромное спасибо за уважительное отношение к заказчикам, быстроту и качество работы
star star star star star
ТГПУ
спасибо за помощь, работа сделана в срок и без замечаний, в полном объеме!
star star star star star

Последние размещённые задания

Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн

решить 6 практических

Решение задач, Спортивные сооружения

Срок сдачи к 17 дек.

только что

Задание в microsoft project

Лабораторная, Программирование

Срок сдачи к 14 дек.

только что

Решить две задачи №13 и №23

Решение задач, Теоретические основы электротехники

Срок сдачи к 15 дек.

только что

Решить 4задачи

Решение задач, Прикладная механика

Срок сдачи к 31 дек.

только что

Выполнить 2 задачи

Контрольная, Конституционное право

Срок сдачи к 12 дек.

2 минуты назад

6 заданий

Контрольная, Ветеринарная вирусология и иммунология

Срок сдачи к 6 дек.

4 минуты назад

Требуется разобрать ст. 135 Налогового кодекса по составу напогового...

Решение задач, Налоговое право

Срок сдачи к 5 дек.

4 минуты назад

ТЭД, теории кислот и оснований

Решение задач, Химия

Срок сдачи к 5 дек.

5 минут назад

Решить задание в эксель

Решение задач, Эконометрика

Срок сдачи к 6 дек.

5 минут назад

Нужно проходить тесты на сайте

Тест дистанционно, Детская психология

Срок сдачи к 31 янв.

6 минут назад

Решить 7 лабораторных

Решение задач, визуализация данных в экономике

Срок сдачи к 6 дек.

7 минут назад

Вариационные ряды

Другое, Статистика

Срок сдачи к 9 дек.

8 минут назад

Школьный кабинет химии и его роль в химико-образовательном процессе

Курсовая, Методика преподавания химии

Срок сдачи к 26 дек.

8 минут назад

Вариант 9

Решение задач, Теоретическая механика

Срок сдачи к 7 дек.

8 минут назад

9 задач по тех меху ,к 16:20

Решение задач, Техническая механика

Срок сдачи к 5 дек.

9 минут назад
9 минут назад
10 минут назад
planes planes
Закажи индивидуальную работу за 1 минуту!

Размещенные на сайт контрольные, курсовые и иные категории работ (далее — Работы) и их содержимое предназначены исключительно для ознакомления, без целей коммерческого использования. Все права в отношении Работ и их содержимого принадлежат их законным правообладателям. Любое их использование возможно лишь с согласия законных правообладателей. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие в связи с использованием Работ и их содержимого.

«Всё сдал!» — безопасный онлайн-сервис с проверенными экспертами

Используя «Свежую базу РГСР», вы принимаете пользовательское соглашение
и политику обработки персональных данных
Сайт работает по московскому времени:

Вход
Регистрация или
Не нашли, что искали?

Заполните форму и узнайте цену на индивидуальную работу!

Файлы (при наличии)

    это быстро и бесплатно