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

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

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

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

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

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

от 25%

Подписываем

договор

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

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

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

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

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

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

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

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

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

Выполнил:

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

Студент ФМА гр. ЭМА-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. Биосфера термині т~н~ыш рет ~ылым~а ~ай жылы еегізілді 1875 Парниктік эффекті~ пайда болу себебі ~анд
2. Система городского права Западноевропейского средневековья
3. тематик и физик один из величайших умов 17 столетия
4. Дети с небес. Искусство позитивного воспитания
5.  Найбільший діаметр встановленого виробу мм ~ 140 2
6. Деякі скінченно-різнецеві методи розвязування звичайних диференціальних рівнянь
7. Язвенная болезнь желудка в фазе обострения. Гастро-эзофагальная рефлюксная болезнь. Хронический гастродуоденит, обострение.html
8. Контрольная работа 3 по дисциплине Физика Вариант 9 Контрольная работа 4 по дисциплине
9. Поняття та соціальне призначення правотворчості
10. Кому хватит сил прочитать эти несколько страниц я думаю вы меня поймете почему так много
11. Конъюнктура и ёмкость рынка
12. Международный конфликт в Южной Осетии
13. Public Reltions одна из самых популярных специальностей в современной России
14. А экз 1815 География дестинаций стран мира к
15. Особливості розвитку рибного ставкового господарств
16. ~ Сказал Павел Иванович
17. На тему- Наукова та науковотехнічна діяльність.
18. либо носителе. Предмет информатики ~ общие закономерности управления информацией и данными принципы ор
19. Пренатальное развитие
20. Theme-rdquo;I cn~t dncerdquo; p.