Talaba haqida ma’lumot;
GURUH: 640-23(AX)
I.F.SH: Ortiqmirzo Ziyoviddinov Javlonbek o’g’li
JURNAL RAQAMI : 23
BALL: 5
dedline.Kalkuliyator dasturini tayorlash.
Men Kalkulyator dasturini tayyorlash uchun C++ Builder dasturlash muhitining Rad Studio XE3 versiyasidan foydalandim. C++ Builderda yangi loyiha yaratamiz:
Dastlab Kalkulyator dasturini interfeysini yaratib olamiz. Dastlab formaning ..Captiongaism familiyamizni yozib olamiz. Font xususiyatini to’g’rilab o’zimizga moslab olamiz.
Keyin formatga 1 ta EDIT va 19 ta BUTTON chaqirib olamiz va o’zimizga qulay qilib joylashtiramiz va bu komponentalarni WIDTH va HEIGH dan foydalangan holda razmerlarni to’g’rlaymiz.Kalkuliyatorda har doim boshlanishda o’ng tarafda 0 turishi uchun EDIT kompanentasining ALIGINMENT hususiyatidan foydalanamiz va TEXT ga 0 deb yozib olamiz.
Va bu dastur biznikiligini bildrib turishi uchun ADDITIONAL degan joydan Timage ni tanlaymiz va picture xuxusiyatidan foydalanib o’z rasmimizni joylaymiz. Guruh va ismimizni yozish uchun 2 ta EDIT chaqramiz.
Va dasturimiz tuzilishi tayyor.
Komponentalarni xodisalariga C++ dasturlash tilidan foydalangan xolda
dasturlashni boshlaymiz.Bu yerda bizga kerak bo’ladigan o’zgaruvchilar yozilgan;
Birinchi raqamlarni bosilganda Label1 ga shu raqamni chiqarib berishini
ta’minlovchi dastur tuzamiz.
if(Edit1->Text=="0"){
Edit1->Text=((TButton*)Sender)->Caption;
}
else {
if(Edit1->Text.Length()<9)
Edit1->Text=Edit1->Text+((TButton*)Sender)->Caption;
}
ushbu kodni 1 raqami turgan Button komponentiga yozamiz.
Va biz bu Button hodisani qolgan raqamlar uchun shunchaki boglab qoyamiz:
Boglash quyidagi tartibda amalga oshiriladi :
1. 1 dan qolgan raqamlar turgan Button larni shift+ sichqoncha kursor
orqali tanlab olamiz.
Tanlangan komponentlarni eventsidan OnClick hodisasiga 1-raqam turgan componentini tanlab qoyamiz.
1. + amalini bajarish dasturini tuzamiz;
k=1;
a=Edit1->Text.ToDouble();
Edit1->Text="0";
2. – amalini bajarish dasturini tuzamiz:
k=2;
a=Edit1->Text.ToDouble();
Edit1->Text="0";
__________________________________________________________
3. * amalini bajarish dasturini tuzamiz:
k=3;
a=Edit1->Text.ToDouble();
Edit1->Text="0";
___________________________________________________________
4./ amalini bajarish dasturini tuzamiz:
k=4;
a=Edit1->Text.ToDouble();
Edit1->Text="0";
__________________________________________________________________
5. = amalini bajarish dasturini tuzamiz:
b=Edit1->Text.ToDouble();
switch (k) {
case 1: c=a+b; break;
case 2: c=a-b; break;
case 3: c=a*b; break;
case 4:
if(b==0){ShowMessage("0 ga bolimaydi!");}
else {c=a/b;}
break;
default:
;
}
Edit1->Text=FloatToStr(c);
6. , amali yani butun qismga ajratish amalini dasturini tuzamiz:
int t=Edit1->Text.Pos(".");
if(t<1){
Edit1->Text=Edit1->Text+".";
}
7.x 2 amalini bajarish dasturini tuzamiz:
a=Edit1->Text.ToDouble();
if(a>0 || a<0){
Edit1->Text=pow(a,2);
} else {
ShowMessage("XATO!");
}
8.C amalini bajarish dasturini tuzamiz:
Edit1->Text="0";
<--Bitta bita ochruvchi dastur tuzamiz:
if(Edit1->Text.Length()>0){
Edit1->Text=Edit1->Text.Delete(Edit1->Text.Length(),1);}
else {
Edit1->Text="0";
}
|