Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Laboratoriya jumısı_4

.doc
Скачиваний:
0
Добавлен:
10.09.2024
Размер:
2.98 Mб
Скачать

Laboratoriya jumısı 4 S++ Builder 6 ortalıǵında paydalanıwshı funkсiyasınan paydalanıp programma dúziw.

Máseleniń berilgeni: Berilgen h adım menen hám [a, b] aralıǵında x agrumenti ózgerip turatuǵın f(x) = , f(x) = funkсiyalarınıń barlıq mánislerin shıǵarıwshı programma dúziń.

Pusk-programmı-Borland C++Builder 6. Nátiyjede tómendegishe taza Project 1 ayna ashıladı.

File-Save Project As… tańlaymız nátiyjede tómendegi ayna ashıladı.

Work 3 papka jaratıp sonıń ishine saqlaymız.

Komponentalar palitrasınan Standart vkladkasın tańlaymız.

Label knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız. Bul proсessti 5 márte qaytalaymız.

Label1 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label1 di a= qa ózgertemiz.

Object Inspector aynasınan Properties –Font - mıshtı shertip shriftti ózgertemiz. (18) OK túymesin basamız.

Label2 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label2 di b= ke ózgertemiz.

Label3 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label3 di h= qa ózgertemiz.

Label4 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label4 di exp(x)*sin(x) ózgertemiz.

Label5 sózin ózgertiw ushın Object Inspector aynasınan Properties-Saption-Label5 di tan(x)*tan(x) ózgertemiz.

Endi Edit knopkasın tańlaymız.

Onı Label1 yaǵnıy a= knopkasınıń qasına oń jaǵına qoyamız.

Label2 yaǵnıy b= knopkasınıń qasına oń jaǵına qoyamız.

Label3 yaǵnıy h= knopkasınıń qasına oń jaǵına qoyamız.

Edit sózlerin joq etiw ushın Object Inspector aynasınan

Properties-Text-Edit1 den Edit1 sózin óshiremiz.

Nátiyjede ayna kórnisi tómendegishe:

Endi Memo knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız. 2- Memo

Object Inspector aynasınan Properties –Scrollbars-ssVertical tańlaymız. Aynamızdıń kórinisi tómendegishe kóriniske iye keledi. Memo sózin joq etiw ushın Object Inspector aynasınan Properties-Lines-String nan Memo1 di óshiremiz.

Endi Button1 knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.

Button1 knopkasınıń atın ózgertiw ushın Object Inspector aynasınan Properties- Saption- Button1 ORÍNLAW sózine ózgertemiz.

Button2 knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.

Button1 knopkasınıń atın ózgertiw ushın Object Inspector aynasınan Properties- Saption- Button1 TAZALAW sózine ózgertemiz.

Standart vkladkadan RadioGroup knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.

RadioGroup knopkasınıń atın ózgertiw ushın Object Inspector aynasınan Properties- Saption- RadioGroup Funkсiyanı tańlaw sózine ózgertemiz.

Object Inspector aynasınan Properties-Items-TString tańlaymız. Nátiyjede tómendegi ayna payda boladı oǵan exp(x)*sin(x), tan(x)*tan(x) lerdi jazamız. Kórinisi tómendegishe:

Form1 aynasında turıp mıshtı eki ret shertemiz, Nátiyjede Unit1.cpp aynasında mına kórinistegi kod payda boladı.Sonıń ishine tómendegilerdi jazamız:

#include "math.h"

typedef double (*TFun)(double);

double fun1(double);

double fun2(double);

void Out_Rez(TFun, double, double, double, TMemo*);

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

void __fastcall TForm1::FormCreate(TObject *Sender)

{

Edit1->Text="0,1";

Edit2->Text="1";

Edit3->Text="0,3";

Memo1->Clear();

Memo2->Clear();

Memo1->Lines->Add("Laboratoriya jumısı 4");

Memo2->Lines->Add("Laboratoriya jumısı 4");

RadioGroup1->ItemIndex=0;

}

Soń Button1 knopkasın eki márte shertemiz. Nátiyjede Code Editor(Redaktor koda) yaǵnıy Unit1.cpp aynasında tómendegishe kod payda boladı. Onıń ishine tómendegilerdi jazamız.

void __fastcall TForm1::Button1Click(TObject *Sender)

{

double a, b, h;

a = StrToFloat(Edit1->Text);

b = StrToFloat(Edit2->Text);

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){

return exp(x)*sin(x);

}

double fun2(double x) {

return tan(x)*tan(x);

}

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));

}

Soń Button2 knopkasın eki márte shertemiz. Nátiyjede Code Editor(Redaktor koda) yaǵnıy Unit1.cpp aynasında tómendegishe kod payda boladı. Onıń ishine tómendegilerdi jazamız.

void __fastcall TForm1::Button2Click(TObject *Sender)

{

switch(RadioGroup1->ItemIndex)

{

case 0: Memo1->Clear(); break;

case 1: Memo2->Clear(); break;

}

}

Hámmesin kiritip jazıp bolǵannan keyin alt +F9 tańlaymız. Aqırında F9 tańlaymız Nátiyjede mınanı esaplap beredi.

Kosımsha: Orınlawdı menyuge beriw.

MainMenu knopkasın tańlap Form1 aynasına mısh penen tartıp qoyamız.

Soń MainMenu knopkasın eki ret shertemiz. Ashılǵan aynanıń Properties-Saption-ORÍNLAW dep jazıp Enter di basamız. ORÍNLAW bólimin tańlaymız oǵan TAZALAW dep jazamız. Keyingisine ShÍǴÍW dep jazamız.

#include "math.h"

typedef double (*TFun)(double);

double fun1(double);

double fun2(double);

void Out_Rez(TFun, double, double, double, TMemo*);

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

void __fastcall TForm1::FormCreate(TObject *Sender)

{

Edit1->Text="0,1";

Edit2->Text="1";

Edit3->Text="0,3";

Memo1->Clear();

Memo2->Clear();

Memo1->Lines->Add("Laboratoriya jumısı 4");

Memo2->Lines->Add("Laboratoriya jumısı 4");

RadioGroup1->ItemIndex=0;

}

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

void __fastcall TForm1::N1Click(TObject *Sender)

{

double a, b, h;

a = StrToFloat(Edit1->Text);

b = StrToFloat(Edit2->Text);

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){return exp(x)*sin(x); }

double fun2(double x) {

return tan(x)*tan(x);

}

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::N2Click(TObject *Sender)

{

switch(RadioGroup1->ItemIndex)

{

case 0: Memo1->Clear(); break;

case 1: Memo2->Clear(); break;

}

}

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

void __fastcall TForm1::N3Click(TObject *Sender)

{

Form1->Close();

}

Соседние файлы в предмете Программирование на C++