У вас вопросы?
У нас ответы:) SamZan.net

На тему- Разложение функции в ряд Фурье Выполнил- Макаричев

Работа добавлена на сайт samzan.net: 2016-03-30

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 7.3.2025

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Новосибирский государственный технический университет

Кафедра электротехнических комплексов

РАСЧЕТНО-ГРАФИЧЕСКАЯ РАБОТА

по дисциплине «Программирование и алгоритмизация»

На тему: «Разложение функции в ряд Фурье»

Выполнил:

Макаричев.П.А

Студент ФМА гр. ЭМА-21

Проверил:

к.т.н. Мятеж А.В.

г. Новосибирск, 2013 год.

//---------------------------------------------------------------------------

#include <vcl.h>

#include <math.h>

#pragma hdrstop

#include "Unit1.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

int X1, Y1, X0=50, Y0=300;

float XX,YY,F0=0;

float A1=0, B1=0, A2=0, B2=0, A3=0, B3=0, A4=0, B4=0, A5=0, B5=0;

float A6=0, B6=0, A7=0, B7=0, A8=0, B8=0, A9=0,B9=0, A10=0, B10=0;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

       : TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::FormActivate(TObject *Sender)

{

    ///--- Построение осей

int h,k;

Form1->Image1->Canvas->Pen->Color=clBlack;

Form1->Image1->Canvas->Pen->Width=1;

Form1->Image1->Canvas->MoveTo(30,300);

Form1->Image1->Canvas->LineTo(570,300);

Form1->Image1->Canvas->MoveTo(50,30);

Form1->Image1->Canvas->LineTo(50,570);

Form1->Image1->Canvas->TextOutA(53,303,0);

////----  Рисование разметки на осях (x,y)

for (k=1;k<=8;k++)

       {

    ///---Ось Х

       Form1->Image1->Canvas->MoveTo(60+k*62.5,30);

       Form1->Image1->Canvas->LineTo(60+k*62.5,570);

       Form1->Image1->Canvas->TextOutA(46+k*62.5,305,k*0.7854);

       }

       for (h=1;h<=10;h++)

       {

    ///---Ось Y

       Form1->Image1->Canvas->MoveTo(48,300-h*25);

       Form1->Image1->Canvas->LineTo(570,300-h*25);

       Form1->Image1->Canvas->TextOutA(53,295-h*25,h*0.1);

       Form1->Image1->Canvas->MoveTo(48,300+h*25);

       Form1->Image1->Canvas->LineTo(570,300+h*25);

       Form1->Image1->Canvas->TextOutA(53,295+h*25,-h*0.1);

       }

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,

     int X, int Y)

{

X1=X;

Y1=Y;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Image1Click(TObject *Sender)

{

////-----рисование линий

Form1->Image1->Canvas->Pen->Color=clRed;

Form1->Image1->Canvas->Pen->Width=3;

if (X1>X0)

       {

       Form1->Memo1->Clear();

       Form1->Memo2->Clear();

       Form1->Image1->Canvas->MoveTo(X0,Y0);

       Form1->Image1->Canvas->LineTo(X1,Y1);

       ///---Вычисление значения F0

       for (XX=X0;XX<X1;XX++)

                       {

                       YY=Y0+(XX-X0)*((Y1-Y0)/(1.0*(X1-X0)));

                       F0=F0+((300-YY)/250.0);

                       A1=A1+cos(1*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B1=B1+sin(1*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A2=A2+cos(2*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B2=B2+sin(2*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A3=A3+cos(3*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B3=B3+sin(3*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A4=A4+cos(4*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B4=B4+sin(4*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A5=A5+cos(5*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B5=B5+sin(5*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A6=A6+cos(6*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B6=B6+sin(6*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A7=A7+cos(7*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B7=B7+sin(7*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A8=A8+cos(8*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B8=B8+sin(8*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A9=A9+cos(9*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B9=B9+sin(9*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       A10=A10+cos(10*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       B10=B10+sin(10*((XX-50)*6.2831/500.0))*(300-YY)/250.0;

                       }

Form1->Edit1->Text=FloatToStrF(F0/(X1-50.0),ffFixed,2,4);

Form1->Memo1->Lines->Add(FloatToStrF(2*A1/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B1/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A2/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B2/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A3/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B3/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A4/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B4/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A5/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B5/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A6/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B6/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A7/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B7/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A8/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B8/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A9/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B9/(X1-50),ffFixed,2,4));

Form1->Memo1->Lines->Add(FloatToStrF(2*A10/(X1-50),ffFixed,2,4));

Form1->Memo2->Lines->Add(FloatToStrF(2*B10/(X1-50),ffFixed,2,4));

       X0=X1;

       Y0=Y1;

       }

     

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

float U;

Form1->Image1->Canvas->Pen->Color=clBlue;

Form1->Image1->Canvas->Pen->Width=2;

Form1->Image1->Canvas->MoveTo(50,300);

for (XX=50;XX<550;XX++)

{

U=0;

U=U+A1*2/500*cos(1*((XX-50)*6.2831/500.0))+B1*2/500*sin(1*((XX-50)*6.2831/500.0))+A2*2/500*cos(2*((XX-50)*6.2831/500.0))+B2*2/500*sin(2*((XX-50)*6.2831/500.0))+A3*2/500*cos(3*((XX-50)*6.2831/500.0))+B3*2/500*sin(3*((XX-50)*6.2831/500.0))+A4*2/500*cos(4*((XX-50)*6.2831/500.0))+B4*2/500*sin(4*((XX-50)*6.2831/500.0))+A5*2/500*cos(5*((XX-50)*6.2831/500.0))+B5*2/500*sin(5*((XX-50)*6.2831/500.0))+A6*2/500*cos(6*((XX-50)*6.2831/500.0))+B6*2/500*sin(6*((XX-50)*6.2831/500.0))+A7*2/500*cos(7*((XX-50)*6.2831/500.0))+B7*2/500*sin(7*((XX-50)*6.2831/500.0))+A8*2/500*cos(8*((XX-50)*6.2831/500.0))+B8*2/500*sin(8*((XX-50)*6.2831/500.0))+A9*2/500*cos(9*((XX-50)*6.2831/500.0))+B9*2/500*sin(9*((XX-50)*6.2831/500.0))+A10*2/500*cos(10*((XX-50)*6.2831/500.0))+B10*2/500*sin(10*((XX-50)*6.2831/500.0));

Form1->Image1->Canvas->LineTo(XX,300-250*(F0/500+U));

Form1->Image1->Canvas->MoveTo(XX,300-250*(F0/500+U));

}

}

//---------------------------------------------------------------------------




1. Предмет изучения философии включает в себя
2. героя времени в русской классике возникающая на разных этапах общественноисторического развития
3.  2012р. МЕТОДИЧНІ РЕКОМЕДАЦІЇ ЩОДО ВИКОНАННЯ КУРСОВИХ РОБІТ З дисципліни Теорія держ
4. Custom service
5. одна из наиболее распространенных экономических категорий современного мира
6. ва Финансовая политика госва явлся частью общей соцэк политики госва по обеспечению сбалансированного
7. Расчет тягово-энергетических характеристик тепловоза 2ТЭ121
8. Лань 2003 512 с Учебники для вузов
9. ПРОМЫШЛЕННЫЕ РОБОТЫ
10. ДИККС1999113с Учебное пособие для студентов институтов и колледжей искусств икультуры а также для инт