close

Вход

Забыли?

вход по аккаунту

?

Лабораторная работа №4

код для вставкиСкачать

Лабораторная работа №4
"Функции пользователя"
Подготовил: Ярошенко Александр
Группа: 313801
Условие:
По заданию лабораторной работы №3 написать программу расчета выбранной функции Y(x), или S(x) (желательно и |Y(x)-S(x)|), вид которой в свою очередь передается в качестве параметра в функцию вывода (Out_Rez).
Код:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <math.h>
typedef double (*TFun)(double);
double fun1(double);
double fun2(double);
void Out_Rez(TFun, double, double, double, TMemo*);
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Edit1->Text="0,1";
Edit2->Text="1";
Edit3->Text="0,1";
Edit4->Text="10";
Memo1->Clear();
Memo2->Clear();
RadioGroup1->ItemIndex=0;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
double a = StrToFloat(Edit1->Text);
double b = StrToFloat(Edit2->Text);
double h = StrToFloat(Edit3->Text);
switch(RadioGroup1->ItemIndex) {
case 0: Out_Rez (fun1,a,b,h,Memo1); break;
case 1: Out_Rez (fun2,a,b,h,Memo2); break;
}
}
double fun1(double x){
double k,s,r,n;
n=StrToInt(Form1->Edit4->Text);
for(k=1;k<=n;k++)
{
s=(pow(x,2*k+1))/(2*k+1);
r+=s;
}
return r;
}
double fun2(double x) {
return (exp(x)-exp(-x))/2;
}
void Out_Rez (TFun f,double a,double b,double h,TMemo *mem) {
for(double x=a; x<=b; x+=h)
mem->Lines->Add("При x = "+FloatToStrF(x,ffFixed,8,2)+
", y = "+FloatToStrF(f(x),ffFixed,8,4));
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
Memo1->Clear();
Memo2->Clear();
}
//---------------------------------------------------------------------------
Документ
Категория
Рефераты
Просмотров
286
Размер файла
13 Кб
Теги
работа, лабораторная
1/--страниц
Пожаловаться на содержимое документа