
Laboratoriya jumısı_4
.docLaboratoriya 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 dı 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 dı 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 dı 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();
}