Ортогональные полиномы Чебышева

Автор работы: Пользователь скрыл имя, 19 Мая 2015 в 21:37, курсовая работа

Описание работы

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

Файлы: 1 файл

Курсовая.doc

— 967.00 Кб (Скачать файл)

 

  excel.WorkBooks[1].WorkSheets[1].Cells[4, 2] := 'коэфф.';

  excel.WorkBooks[1].WorkSheets[1].Cells[4, 1] := 'x^';

  _count := n;

 

  for row := count - 1 downto 0 do

  begin

    excel.WorkBooks[1].WorkSheets[1].Cells[row+5,1] := FloatToStr(matr_for_table[row]);

 

    excel.WorkBooks[1].WorkSheets[1].Cells[row+5,2] := IntToStr(_count);

    _count := _count - 2;

  end;

 

  excel.WorkBooks[1].WorkSheets[1].Shapes.AddPicture(GetCurrentDir+

                                                      '\PictureChart.bmp',

                                                      1,1,100,60,600,300);

 

// Делаем его видимым

  excel.Visible := true;

//освобождаем интерфейсы

  excel := Unassigned;

Except

  showmessage('Внимание! Произошла ошибка при создании MS Excel приложения');

//закрываем Excel

  excel.Application.quit;

//освобождаем интерфейсы

  excel := Unassigned;

end;

end;

 

 

procedure TMyClass.Import_To_Word(rod, por:integer);

var

  word,  wdRng: variant; // Переменная в  которой создаётся объект Word

begin

try

//Отчет в Word

 

  word := CreateOleObject('Word.Application');

 

// Чтоб не задавал вопрос о  сохранении документа

  word.DisplayAlerts := false;

//Новый док

  word.Documents.Add;

  word.ActiveDocument.Paragraphs.Add;

 

  wdRng:=word.ActiveDocument.Paragraphs.Item(1).Range;

  wdRng.ParagraphFormat.Alignment := wdAlignParagraphCenter;

  wdRng.InsertBefore('Полином Чебышева ');

 

  wdRng:=word.ActiveDocument.Paragraphs.Item(2).Range;

  wdRng.InsertAfter(IntToStr(rod+1)+'-го рода ' + IntToStr(por)+ ' степени      ');

 

  wdRng.InsertAfter(v_str);

 

  word.Selection.InlineShapes.AddPicture(GetCurrentDir + '\PictureChart.bmp');

 

  word.Visible := true;

//освобождаем интерфейсы

  word := Unassigned;

Except

  showmessage('Внимание! Произошла ошибка при создании MS Word приложения');

//закрываем Word

  word.Application.quit;

//освобождаем интерфейсы

  word := Unassigned;

end;

end;

 

 

 

 

 

initialization

  TTypedComObjectFactory.Create(ComServer, TMyClass, Class_MyClass,

    ciMultiInstance, tmApartment);

end.

 

Файл интерфейса COM – Unit2.pas

unit Unit2;

 

interface

uses VCLTee.TeeProcs, VCLTee.Chart, VCLTee.Series, Grids;

const

  Class_MyClass: TGUID = '{FBE41A88-03B9-4EEB-B457-E49F79457FA7}';

type IMyClass = interface

['{766646F2-D3D7-48C3-851A-EEFA77F57FE3}']

    procedure PolyCheb(_n, _rod: integer); stdcall;

    function  idx(i,j:integer):integer; stdcall;

    procedure ClearMatr; stdcall;

    function st(gr:integer):string; stdcall;

    function xst(gr:integer):string; stdcall;

    function koef(gr:integer):string; stdcall;

    function get_str(): string; stdcall;

    function get_count(): integer; stdcall;

    procedure ShowPolynomial; stdcall;

    function get_el_array(i_row:integer): Extended; stdcall;

    procedure whithout_zero(); stdcall;

    procedure Get_Table(SG : TStringGrid); stdcall;

    procedure Get_Chart(Ch : TChart); stdcall;

    function stepX(X: Extended; stepen: integer): Extended; stdcall;

    procedure Import_To_Excel(rod, por:integer); stdcall;

    procedure Import_To_Word(rod, por:integer); stdcall;

end;

implementation

 

end.

 

 

 


Информация о работе Ортогональные полиномы Чебышева