![](/user_photo/_userpic.png)
Referat / Du'ysenbaev N
.docÓZBEKISTAN RESPUBLIKSÍ INFORMACIYALÍQ TEXNOLOGIYALARÍ HÁM KOMMUNIKACIYALARÍN RAWAJLANDÍRÍW MINISTRLIGI
TASHKENT INFORMACIYALÍQ TEXNOLOGIYALARÍ UNIVERSITETI NÓKIS FILIALÍ
“Kompyuter injiniringi” fakulteti
Kompyuter injiniringi bag’darı
2-kurs studentı
Du’ysenbaev Nursultannıń
C++ tilinde programmalastırıw páninen
Laboratoriya jumısı
Tayarlağan: Du’ysenbaev N
Qabıllağan: Qalmuratov B
Nókis -2017
№1 LABORATORIYALIQ JUMIS
Tema: C++ Builder ortalığı, Standard komponentalar bólimi: Label, Edit hám Button komponentaları
Jumıstıń maqseti: C++ Builder ortalığında Standard komponentalar bólimindegi Label, Edit hám Button komponentalarınan paydalanıp sızıqlı protseslerdi programmalastırııdı úyreniw.
Máseleniń qoyılıwı: Tómendegi kestede kórsetilgen tapsırmalardıń bağdarlamasın C++ Builder ortalığında dúzip shığıń hám nátiyjesin alıń.
Metodikalıq kórsetpe:
C++ Builder di iske túsiriń hám onıń tiykarğı aynaları.
C++ Builder di iske túsirgennen keyin ashılğan aynalardan menyular, komponentalar, instrumentler jaylasqan ayna tiykarğı ayna bolıp esaplanadı.
Forma konstruktorı (Form) – bul konteyner esaplanıp, konteynerge barlıq komponentalar jaylastırıladı. Yağnıy interfeys dizaynı jaratıladı.
Modullar (Kodlar aynası, Unit) – bul jerde konteynerge jaylastırılğan hár túrli komponentalar ushın bağdarlama kodları jazıladı. Formadan Kodlar aynasına yamasa kerisinshe Kodlar aynasınan Forma konteynerine ótiw ushın F12 túymesinen paydalanıladı.
Object Tree View – Formağa jaylastırılğan komponentalardı terek shaqaları formasında kórsetip beredi. Bul kóplep komponentalar menen islegende júdá qolaylı.
Object Inspector – hár bir komponenta bul ob'ekt esaplanadı hám onıń qandayda bir qásiyeti (Properties) hámde onıń isleytuğın bir hádiysesi (Events) boladı.
Dúzilgen bağdarlamanı (proektti) tolıq saqlap qoyıı ushın File -> Save All (CtrlQShiftQS) saylanadı. Sonıń menen birge hár bir dúzilgen bağdarlamanı bólek-bólek papkalarda saqlaw maqsetke muıapıq.
Taza proekt jaratıı ushın File -> New -> Application saylanadı.
Button komponentası. Button komponentasınıń bazı bir qásiyetlerin (Object Inspector -> Properties) kórip shığamız:
Caption – Button komponentasınıń Forma konstruktorında qanday at penen kórinip turıwın támiynleydi. Bul qásiyette komponentağa at berip atırğanda qálegen hárip aldına & (ampersand) belgisin qoysaq, sol háriptiń astı sızılğan halda shığadı hámde bağdarlama iske túskennen keyin usı háripti Alt túymesi menen birge bassa? sol komponenta iske túsedi.
Cursor – Bul qásiyet programmanı iske túsirgennen keyin Button komponentasınıń ústine kursordı alıp barğanda, kursor qanday kóriniste bolıwın támiynleydi.
Name - Button komponentasınıń Kodlar aynasında qanday at penen kórinip turıwın támiynleydi.
ShowHint – Bul qásiyette ádette false mánisi qoyılğan boladı, eger biz bul mánisti true qılıp ózgertsek hámde bağdarlama iske túskennen keyin kursordı Button komponentası ústine alıp barsaq bizge podskazkanı kórsetedi.
Hint – Bul qásiyetke podskazkada shığarılıwı kerek bolğan xabar jazıladı.
Edit komponentası. Edit komponentası mağlıımatlardı kiritiw ushın paydalanıladı. Edit komponentasınıń bazı bir qásiyetlerin kórip shığamız:
BorderStyle – komponentanıń shegarası qanday kóriniste bolıwın belgilep beredi. Eger bsSingle bolsa shegara boladı, eger bsNone bolsa shegara bolmaydı.
CharCase – komponentağa kiritiletuğın háriplerdiń tek ğana úlken, tek ğana kishi yamasa aralas halatta bolııın támiynleydi.
Color – komponentağa reń beriw ushın isletiledi.
Ctl3D – komponentanıń kórinisin ózgertiriı ushın isletiledi.
PasswordChar – komponenta ishindegi mağlımattıń (Edit1) kórinisin ózgertiw ushın isletiledi.
ReadOnly – bağdarlama iske túskennen keyin oğan mağlıımatlar kiritiwge ruxsat beriı yamasa ruxsat bermeslikti belgilep beredi.
Text – dáslep komponenta ishinde qanday mağlıwmat turıwı kerekligin belgilep beredi.
Label komponentası. Label komponentası mağlıwmatlardı shığarıw ushın paydalanıladı. Label komponentasınıń bazı bir qásiyetlerin kórip shığamız:
AutoSize – Eger true mánis turğan bolsa komponentağa jazılğan mağlıımatlar keńligine qarap avtomat ráıishte keńeyip yamasa qısqarıp turadı. Eger false mánis turğan bolsa komponentağa jazılğan mağlıwmatlar keńligine qaramastan dáslepki keńlikte tura beredi.
Font – komponentağa jazılğan mağlıımatlardıń shrift, reń, jazılıw stili hámde ólshemlerin ózgertiw ushın isletiledi.
WordWrap – komponentke jazılıp atırğan mağlıwmatlar sıymay qalğan jağdayda olardıń keyingi qatarlarğa ótiw yamasa ótpesligin támiynleydi.
8-tapsırma. Deneniń tezligin esaplaytug’ın bag’darlama dúzilsin.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
float S,T,V;
S=StrToFloat(Edit1->Text);
T=StrToFloat(Edit2->Text);
V=S/T;
Edit3->Text=FloatToStr(V);
}
№2 LABORATORIYALIQ JUMIS
Tema: C++ Builder ortalıgı, Standard komponentalar bólimi: Panel hám CheckBox komponentaları.
Jumıstıńmaqseti: C++ Builder ortalıgında Standard komponentalar bólimindegi Panel hám CheckBox komponentalarınan paydalanıp bagdarlamalar dúziwdi úyreniw.
Máseleniń qoyılıwı: Tómendegi kestede kórsetilgen tapsırmalardıń bagdarlamasın C++ Builder ortalıgında dúzip shıgıń hám nátiyjesin alıń.
Metodikalıq kórsetpe:
Panel komponentası. Panel komponentası birneshe komponentlerdi gruppalaw ushın isletiledi. Panel komponentasınıń bazıbir qásiyetlerin kórip shıgamız:
Align – bul qásiyet Forma ólshemleri ózgertirilgende, komponentanıń Formada jaylasıw ornınan ıqlaw ushın isletiledi. Align qásiyetiniń mánisleri hám olarga túsinderme:
alNone – Komponentanıń Formada jaylasqan ornı ózgermeydi. Dáslep komponentaga usı qásiyet ornatılgan boladı.
alTop – Komponenta konteynerdiń joqarı bólegin tolıq iyeleydi. Programma islewi dawamında onıń keńligi konteyner keńligi ózgeriwine qarap ózgeredi. Bunda komponentabiyikligiózgerissizqaladı.
alBottom – Komponenta konteynerdiń tómengi bólegin tolıq iyeleydi. Programma islewi dawamında onıń keńligi konteyner keńligi ózgeriwine qarap ózgeredi. Bunda komponenta biyikligi ózgerissiz qaladı.
alLeft– Komponenta konteynerdiń shep tárepin tolıq iyeleydi. Programma islewi dawamında onıń biyikligi konteyner biyikligi ózgeriwine qarap ózgeredi. Bunda komponenta keńligi ózgerissiz qaladı.
alRight – Komponenta konteynerdiń oń tárepin tolıq iyeleydi. Programma islewi dawamında onıń biyikligi konteyner biyikligi ózgeriwine qarap ózgeredi. Bunda komponenta keńligi ózgerissiz qaladı.
alClient – Komponenta konteynerdiń bos qalgan bólegin tolıq iyeleydi. Programma islewi dawamında onıń ólshemleri konteyner ólshemleri ózgeriwine qarap ózgeredi.
alCustom – Komponentanıń ornı Custom Align Position hám Custom Align Insert Before funktsiyaları arqalı anıqlanadı.
Alignment – bul qásiyet arqalı komponentaga jazılgan tekstlerdi ońga, shepke hám ortaga tegislew múmkin. Alignment qásiyetiniń mánisleri hám olarga túsinderme:
taLeftJustify – Tekstlerdi komponentanıń shep tárepine tegisleydi.
taCenter – Tekstlerdi komponentanıń ortasına tegisleydi.
taRightJustify – Tekstlerdi komponentanıń oń tárepine tegisleydi.
CheckBox komponentası. CheckBox komponentasınıń bazıbir qásiyetlerin kórip shıgamız:
Checked–CheckBox komponentasınıń tiykargı qásiyetlerinen biri bolıp esaplanadı. Eger Checked qásiyetiniń mánisi false bolsa komponenta belgilenbegen, eger true mánis bolsa komponenta belgilengen boladı.
Enabled – bagdarlama iske túskennen keyin komponentanıń aktiv yamasa aktiv emes jagdayda bolıwın támiynleydi. Bul qásiyette ádette true mánis ornatılgan boladı, yagnıy komponenta aktiv jagdayda boladı. Eger biz bul mánisti false mánisine ózgertsek komponenta aktiv emes jagdayga ótedi.
Visible – bagdarlama iske túskennen keyin komponentanıń kórinip yamasa kórinbey turıwın támiynleydi. Bul qásiyette ádette true mánis ornatılgan boladı. Eger biz bul mánisti false mánisine ózgertsek komponenta kórinbey qaladı.
8- tapsirma: CheckBox komponentası arqalı belgilengen Universitet atların Label komponentası maydanına shıgarıwshı bag’darlama dúzilsin.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Label1 -> Caption = " ";
//Eger CheckBox1 komponentasi belgilengen bolsa Label1 ge shigariladi
if(CheckBox1 -> Checked)
Label1 -> Caption = Label1 -> Caption + " " + CheckBox1 -> Caption;
//Eger CheckBox2 komponentasi belgilengen bolsa Label1 ge shigariladi
if(CheckBox2 -> Checked)
Label1 -> Caption = Label1 -> Caption + " " + CheckBox2 -> Caption;
//Eger CheckBox3 komponentasi belgilengen bolsa Label1 ge shigariladi
if(CheckBox3 -> Checked)
Label1 -> Caption = Label1 -> Caption + " " + CheckBox3 -> Caption;
№3 LABORATORIYALIQ JUMIS
Tema: C++ Builder ortalig’i, Standard komponentalar bolimi: RadioButton, GroupBox, RadioGroup komponentalari ham ShowMessage protsedurasi.
Jumistıń maqseti: C++Builder ortaliginda Standard komponentalar bolimindegi RadioButton, GroupBox, RadioGroup komponentalari ham ShowMessage protsedurasinan paydalanip bag’darlamalar duziwdi uyreniw. Máseleniń qoyilıwı: Tómendegi kestede kórsetilgen tapsirmalardı. bagdarlamasın C++ Builder ortaliginda dúzip shiğiń hám nátiyjesin alıń.
Metodikaliq kórsetpe:
RadioButton komponentasi. RadioButton komponentasi bir neshe variantlardan birewin saylaw ushin isletiledi. RadioButton komponentasinıń tiykarği qásiyeti Checked qásiyeti esaplanadi. Misali ushın tómendegidey interfeys jaratilğan.
B
ul
jerde dáslep barliq RadioButton komponentalariniń Checked
qásiyetiniń mánisi false mánisin qabil etip turğan boladi. Eger
biz qaysi bir RadioButton komponentasi Checked qásiyeti mánisin
true etip ózgertsek sol komponenta belgilenip turadi. Yağniy
berilgen bir neshe RadioButton komponentalarinan tek ğana usi
komponenta saylanğanliğin bildiredi.
GroupBox komponentasi. GroupBox komponentasiniń tiykarği xizmeti RadioButton komponentalarinan bir neshesin ajiratip alip turip olardan paydalaniwdan ibarat. Eger biz bağdarlamada (Formada) GroupBox komponentasinan paydalanbastan 10 dana yamasa 20 dana RadioButton komponentalari menen islesetuğin bolsaq, bağdarlama iske túskennen keyin solardan tek ğana birewin saylay alamiz.
ShowMessage protsedurasi. ShowMessage protsedurasi tek ğana OK knopkasi bar bolğan ápiwayi xabar aynasin shiğariw ushin isletiledi.
RadioGroup komponentasi. RadioGroup komponentasiniń ózine tán qasiyetlerin kórip shiğamiz: Items – RadioGroup komponentasina elementler kiritiw ushin isletiledi.
Columns - RadioGroup komponentasi elementleriniń neshe bağanada jaylasiwin támiynleydi. ádette bul qásiyettiń mánisinde 1 turğan boladi.
ItemIndex – Dáslepki jağdayda RadioGroup komponentasindaği neshinshi element belgilenip turiwi kerekligin belgilep beredi. Ádette bul qasiyet mánisinde “-1” turğan boladi, yağniy bul elementlerden hesh biri belgilenbey turiwin bildiredi. Eger biz bul mániske “0” mánisin bersek RadioGroup komponentasindaği 1-element, al “1” mánisin bersek RadioGroup komponentasindaği 2-element belgilenip turadi.
8-tapsirma: RadioGroup komponentası arqalı belgilengen Universitetti ShowMessage protsedurası járdeminde shıg’arıw.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//Eger RadioButton1 belgilengen bolsa
if(RadioButton1 -> Checked)
ShowMessage("Siz TATU di sayladiniz");
//Eger RadioButton2 belgilengen bolsa
if(RadioButton2 -> Checked)
ShowMessage("Siz NMPI di sayladiniz");
}
4 – laboratoriyalıq jumıs
Tema: C++ Builder ortalıg’ı, Standart komponentalar bólimi: ListBox hám ComboBox komponentaları.
Jumıstıń maqseti: C++ Builder ortalıg’ında Standart komponentalar bólimindegi ListBox hám ComboBox kompanentalarınan paydalanıp bag’darlamalar dúziwdi úyreniw.
Máseleniń qoyılıwı: Tómendegi kestede kórsetilgen tapsırmalardıń bag’darlamasın C++Builder ortalıg’ında dúzip shıg’ıń hám nátiyjesin alıń.
Metodikalıq kórsetpe:
ListBox komponentası. ListBox komponentası kerekli bolg’an elementlerden birewin saylaw múmkinshiligin beriwshi dizimdi tayatlaw ushın isletiledi. Komponentanıń bazı bir qásiyetlerin kórip shıg’amız:
Items – bul qásiyet dizim elementlern jaratıw ushın isletiledi.
Sorted – keyingi element qosılg’annan keyin dizimnıń avtomat ráwishte sortirovkalanıwın támiynleydi.
ItemIndex – saylang’an elementtiń nomeri (dizim elementleri 0den baslap nomerlenedi). Eger dizimdegi hesh bir element saylanbag’an bolsa, onda qásiyettiń mánisi -1 ge teń.
ComboBox komponentası. ComboBox komponentası redaktorlaw aynasına klaviaturadan teriw arqalı yamasa dizimnen saylaw arqalı mag’lıwmatlardı kiritiw múmkinshiligin beredi. Komponentanıń bazı bir qásiyetlerin kórip shıg’amız:
Items, Sorted hám ItemIndex qásiyetleri joqarıdag’ı ListBox komponentası qásiyetleri menen birdey wazıypalardı atqaradı.
Text – redaktorlaw (kiritiw) aynasında qanday tekst bolıwın yamasa ulıwma tekst bolmaslıg’ın támiynleydi.
DropDownCount – ashılg’an dizimde kórinip turıwı kerek bolg’an elementler sanın belgilep beredi. Eger dizim elementleriniń sanı DropDownCount qásiyetinde kórsetilgen mánisten kóp bolsa, onda vertikal aylandırıw polosası payda boladı.
8-Tapsirma: ComboBox komponentası arqalı jaratılgan Universit atları dizimine Edit komponentası járdeminde element qosıwshı hám dizimnen belgilengen elementti óshiriwshi bagdarlama dúzilsin.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(ComboBox1 -> Items -> IndexOf(Edit1 -> Text) == -1)
ComboBox1 -> Items -> Add(Edit1 -> Text);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
ComboBox1 -> Items ->Delete(ComboBox1 -> ItemIndex);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
ComboBox1 -> Items ->Strings[ComboBox1 -> ItemIndex] = Edit1 -> Text;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
ComboBox1 ->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
{
Close();
}