Dasturiy injiniring


Download 1.98 Mb.
Pdf ko'rish
bet4/8
Sana14.11.2021
Hajmi1.98 Mb.
#174566
1   2   3   4   5   6   7   8
Bog'liq
MTM uchun oyin dasturi

1. Qiziqtiruvchi o’yin 

1.1. Uskunalar panelidan Additional bo’limini tanlab, Form1 oynasiga 36 ta Shape 

komponentasini olib joylashtiriladi. 

1.2. Barcha Shape komponentasi Shape xususiyatiga stEllipse tanlanadi. 

1.3. Barcha Shape komponentasi Height  xususiyatiga 73 deb yoziladi. 

1.4. Barcha Shape komponentasi Width  xususiyatiga 65 deb yoziladi. 

1.5.  Barcha  Shape  komponentasi  Brush->Stayle    xususiyatiga bsSolid  ya’ni  oddiy 

ko’rinishi tanlanadi. 

1.6.  1-14  gacha  Shape  komponentasi  Brush->Color xususiyatiga  clWhite  ya’ni  oq 

rang tanlanadi. 

1.7.  15-23  gacha  Shape  komponentasi  Brush->Color  xususiyatiga  clYellow  ya’ni 

sariq rang tanlanadi. 

1.8. 24-28 gacha Shape komponentasi Brush->Color xususiyatiga clRed ya’ni qizil 

rang tanlanadi. 

1.9.  Uskunalar  panelidan  AlphaStandart  bo’limini  tanlab,  Form1  oynasiga  sPanel 

komponentasini olib joylashtiriladi. 

1.20.  Uskunalar  panelidan  Additional  bo’limini  tanlab,  Form1  oynasiga  sPanel1 

ichiga 5 ta Shape komponentasini olib joylashtiriladi. 

1.21.  29-33  gacha  Shape  komponentasi  Brush->Color  xususiyatiga  clLime  ya’ni 

yashil rang tanlanadi. 




 

Har bir xatoga 1 ta Shape oq rangga bo’yaladi.  



1.22.  34-36  gacha  Shape  komponentasi  Brush->Color  xususiyatiga  clLime  ya’ni 

yashil rang tanlanadi. 

1.23.  Uskunalar  panelidan  Standart  bo’limini  tanlab,  Form1  oynasiga  Label 

komponentasini  olib  formaning  chap  tepa  qismiga  joylashtiriladi.  Bu  achkolarni 

ko’rsatib turadi. 

1.24. Uskunalar panelidan Standart bo’limini tanlab, Form1 oynasiga sPanel1 ichiga 

sPanel1ning o’ng tomoniga Label komponentasini olib joylashtiriladi.  

Bu Shape yetmagan qo’shimcha bonuslarni ko’rsatib turadi. 

1.25.  Label1,  Label2  ob’yektni  ko’rinishiga  doir  xossalaridan  Font  tanlanadi  (... 

bosilgan holda). 

Fornt shirift =

 “

Times New Roman”,  qalin, 28 razmerga sozlanadi va OK tugmasi 



bosiladi. 

1.26. Label1, Label2 komponentasi Caption xususiyatiga "0" deb yoziladi

1.27. Label1 komponentasi Font->Color clRed ya’ni qizil tanlanadi. 

1.28. 29-33 Shape komponentasi Height  xususiyatiga 33 deb yoziladi. 

1.29. 29-33 Shape komponentasi Width  xususiyatiga 33 deb yoziladi. 

1.30.  System  bo’limidan  Timer  komponentasini  olib  Form1  oynasiga  ixtiyoriy 

joylashtiriladi. 

1.30.1. Sichqonchaning chap tugmasini Timer1 ustiga 2 marta bosgan holda ichiga 

kiriladi va quyidagi kod yoziladi: 

void __fastcall TForm1::Timer1Timer(TObject *Sender) 

Label1->Caption=IntToStr(achko); 



    if(achko<=50) 

    { 


       Timer1->Interval=20; 

    } 


    else if(achko>=50&&achko<=55) 

    { 


      Timer1->Interval=18; 

    } 


    else if(achko>=100&&achko<=105) 

    { 


      Timer1->Interval=16; 

    } 



 

    else if(achko>=150&&achko<=155) 



    { 

      Timer1->Interval=15; 

    } 

    if(jonCaption)&&jon<5) 



    { 

        if(Shape33->Brush->Color==clLime) 

        { 

           Shape33->Brush->Color=clWhite; 

        } 

        else if(Shape32->Brush->Color==clLime) 

        { 

              Shape32->Brush->Color=clWhite; 

        } 

        else if(Shape31->Brush->Color==clLime) 

        { 

              Shape31->Brush->Color=clWhite; 

        } 

        else if(Shape30->Brush->Color==clLime) 

        { 

              Shape30->Brush->Color=clWhite; 

        } 

        else if(Shape29->Brush->Color==clLime) 

        { 

              Shape29->Brush->Color=clWhite; 

        } 

    } 


     Label2->Caption=IntToStr(jon); 

     if(jon<=0&&j) 

     { 

        f=1; 

        S1->Click(); 

        j=0; 

        Shape29->Brush->Color=clWhite; 

        sButton2->Visible=1; 

     } 

     if(f) 

     { 

         r=rand()%400; 

         Shape1->Top=0-r-75; 

         r=rand()%400; 

       Shape2->Top=0-r-75; 

       r=rand()%400; 

       Shape3->Top=0-r-75; 

       r=rand()%400; 

       Shape4->Top=0-r-75; 

       r=rand()%400; 

       Shape5->Top=0-r-75; 

       r=rand()%400; 

       Shape6->Top=0-r-75; 

       r=rand()%400; 

       Shape7->Top=0-r-75; 



 

       r=rand()%400; 



       Shape8->Top=0-r-75; 

       r=rand()%400; 

       Shape9->Top=0-r-75; 

       r=rand()%400; 

       Shape10->Top=0-r-75; 

       r=rand()%400; 

       Shape11->Top=0-r-75; 

       r=rand()%400; 

       Shape12->Top=0-r-75; 

       r=rand()%400; 

       Shape13->Top=0-r-75; 

       r=rand()%400; 

       Shape14->Top=0-r-75; 

        //sariq 

       r=rand()%1000; 

       Shape15->Top=0-r-300; 

       r=rand()%1000; 

       Shape16->Top=0-r-300; 

       r=rand()%1000; 

       Shape17->Top=0-r-300; 

       r=rand()%1000; 

       Shape18->Top=0-r-300; 

       r=rand()%1000; 

       Shape19->Top=0-r-300; 

       r=rand()%1000; 

       Shape20->Top=0-r-300; 

       r=rand()%1000; 

       Shape21->Top=0-r-300; 

       r=rand()%1000; 

       Shape22->Top=0-r-300; 

       r=rand()%1000; 

       Shape23->Top=0-r-300; 

       //qizil 

        r=rand()%5000; 

       Shape24->Top=0-r-3000; 

       r=rand()%5000; 

       Shape25->Top=0-r-3000; 

       r=rand()%5000; 

       Shape26->Top=0-r-3000; 

       r=rand()%5000; 

       Shape27->Top=0-r-3000; 

       r=rand()%5000; 

       Shape28->Top=0-r-3000; 

       //jon 

        r=rand()%1000; 

        Shape34->Top=0-r-1000; 

         r=rand()%1000; 

      Shape35->Top=0-r-1000; 

       r=rand()%1000; 

       Shape36->Top=0-r-1000; 

       f=0; 



10 

 

     } 



    Shape1->Top= Shape1->Top+v; 

    Shape2->Top= Shape2->Top+v; 

    Shape3->Top= Shape3->Top+v; 

    Shape4->Top= Shape4->Top+v; 

    Shape5->Top= Shape5->Top+v; 

    Shape6->Top= Shape6->Top+v; 

    Shape7->Top= Shape7->Top+v; 

    Shape8->Top= Shape8->Top+v; 

    Shape9->Top= Shape9->Top+v; 

    Shape10->Top= Shape10->Top+v; 

    Shape11->Top= Shape11->Top+v; 

    Shape12->Top= Shape12->Top+v; 

    Shape13->Top= Shape13->Top+v; 

    Shape14->Top= Shape14->Top+v; 

    Shape15->Top= Shape15->Top+(v*2); 

    Shape16->Top= Shape16->Top+(v*2); 

    Shape17->Top= Shape17->Top+(v*2); 

    Shape18->Top= Shape18->Top+(v*2); 

    Shape19->Top= Shape19->Top+(v*2); 

    Shape20->Top= Shape20->Top+(v*2); 

    Shape21->Top= Shape21->Top+(v*2); 

    Shape22->Top= Shape22->Top+(v*2); 

    Shape23->Top= Shape23->Top+(v*2); 

    Shape24->Top= Shape24->Top+(v*3); 

    Shape25->Top= Shape25->Top+(v*3); 

    Shape26->Top= Shape26->Top+(v*3); 

    Shape27->Top= Shape27->Top+(v*3); 

    Shape28->Top= Shape28->Top+(v*3); 

    Shape34->Top= Shape34->Top+(v*2); 

    Shape35->Top= Shape35->Top+(v*2); 

    Shape36->Top= Shape36->Top+(v*2); 

    if(Shape1->Top>Form1->Height-120) 

    { 

       r=rand()%400; 



       Shape1->Top=0-r-75; 

       jon--

    } 

    if(Shape2->Top>Form1->Height-120) 



    { 

       r=rand()%400; 

      Shape2->Top=0-r-75;  jon--; 

    } 


    if(Shape3->Top>Form1->Height-120) 

    { 


       r=rand()%400; 

      Shape3->Top=0-r-75;  jon--; 

    } 

    if(Shape4->Top>Form1->Height-120) 



    { 

      r=rand()%400; 

      Shape4->Top=0-r-75;   jon--; 



11 

 

    } 



    if(Shape5->Top>Form1->Height-120) 

    { 


       r=rand()%400; 

      Shape5->Top=0-r-75;    jon--

    } 

    if(Shape6->Top>Form1->Height-120) 



    { 

       r=rand()%400; 

      Shape6->Top=0-r-75;    jon--; 

    } 


    if(Shape7->Top>Form1->Height-120) 

    { 


       r=rand()%400; 

      Shape7->Top=0-r-75;    jon--; 

    } 

    if(Shape8->Top>Form1->Height-120) 



    { 

       r=rand()%400; 

      Shape8->Top=0-r-75;  jon--; 

    } 


    if(Shape9->Top>Form1->Height-120) 

    { 


       r=rand()%400; 

      Shape9->Top=0-r-75; jon--; 

    } 

    if(Shape10->Top>Form1->Height-120) 



    { 

       r=rand()%400; 

      Shape10->Top=0-r-75;  jon--; 

    } 


    if(Shape11->Top>Form1->Height-120) 

    { 


       r=rand()%400; 

      Shape11->Top=0-r-75;  jon--; 

    } 

    if(Shape12->Top>Form1->Height-120) 



    { 

       r=rand()%400;        jon--

      Shape12->Top=0-r-75; 

    } 


    if(Shape13->Top>Form1->Height-120) 

    { 


       r=rand()%400;       jon--; 

      Shape13->Top=0-r-75; 

    } 

    if(Shape14->Top>Form1->Height-120) 



    { 

       r=rand()%400;        jon--; 

      Shape14->Top=0-r-75; 

    } 


      //sariq 


12 

 

    if(Shape15->Top>Form1->Height-120) 



    { 

       r=rand()%1000;     jon--; 

      Shape15->Top=0-r-300; 

    } 


    if(Shape16->Top>Form1->Height-120) 

    { 


       r=rand()%1000; 

      Shape16->Top=0-r-300; jon--; 

    } 

    if(Shape17->Top>Form1->Height-120) 



    { 

       r=rand()%1000; 

      Shape17->Top=0-r-300; jon--; 

    } 


    if(Shape18->Top>Form1->Height-120) 

    { 


       r=rand()%1000;       jon--; 

      Shape18->Top=0-r-300; 

    } 

    if(Shape19->Top>Form1->Height-120) 



    { 

       r=rand()%1000;        jon--; 

      Shape19->Top=0-r-300; 

    } 


    if(Shape20->Top>Form1->Height-120) 

    { 


       r=rand()%1000; 

      Shape20->Top=0-r-300; jon--; 

    } 

    if(Shape21->Top>Form1->Height-120) 



    { 

       r=rand()%1000; 

      Shape21->Top=0-r-300;  jon--; 

    } 


    if(Shape22->Top>Form1->Height-120) 

    { 


       r=rand()%1000;        jon--; 

      Shape22->Top=0-r-300; 

    } 

    if(Shape23->Top>Form1->Height-120) 



    { 

       r=rand()%1000;        jon--; 

      Shape23->Top=0-r-300; 

    } 


       //qizil 

       if(Shape24->Top>Form1->Height-120) 

    { 

       r=rand()%5000;          jon--



      Shape24->Top=0-r-3000; 

    } 


    if(Shape25->Top>Form1->Height-120) 


13 

 

    { 



       r=rand()%5000;       jon--; 

      Shape25->Top=0-r-3000; 

    } 

    if(Shape26->Top>Form1->Height-120) 



    { 

       r=rand()%5000;        jon--; 

      Shape26->Top=0-r-3000; 

    } 


    if(Shape27->Top>Form1->Height-120) 

    { 


       r=rand()%5000;        jon--; 

      Shape27->Top=0-r-3000; 

    } 

    if(Shape28->Top>Form1->Height-120) 



    { 

       r=rand()%5000; 

      Shape28->Top=0-r-3000;  jon--; 

    } 


    if(Shape34->Top>Form1->Height-120) 

    { 


       r=rand()%1000; 

       Shape34->Top=0-r-1000; 

    } 

    if(Shape35->Top>Form1->Height-120) 



    { 

       r=rand()%1000; 

       Shape35->Top=0-r-1000; 

    } 


    if(Shape36->Top>Form1->Height-120) 

    { 


       r=rand()%1000; 

       Shape36->Top=0-r-1000; 

    } 



1.31.  Uskunalar  panelidan  Additional  bo’limini  tanlab,  Form1  oynasiga  sButton 



komponentasini olib joylashtiriladi. 

1.31.1. sButton1 komponentasi Caption xususiyatiga "Start" deb yoziladi; 

1.31.2. sButton1 ob’yektni ko’rinishiga doir xossalaridan Font tanlanadi(... bosilgan 

holda). 


Fornt shirift =

 “

Times New Roman”,  qalin, 72 razmerga sozlanadi va OK tugmasi 



bosiladi. 

sButton1 tugmasi ichiga quyidagi kod yoziladi: 

void __fastcall TForm1::sButton2Click(TObject *Sender) 

    S1->Click(); 




14 

 

    sButton1->Visible=0;     



1.32. Standart bo’limidan MainMenu komponentasini olib Form1 oynasiga ixtiyoriy 

joylashtiriladi(Ma’lumotlar Standart joylashib qoladi). 

1.32.1.  MainMenu1ning    ob’yektni  ko’rinishiga  doir  xossalaridan  Items  tanlanadi 

(... bosiladi). 

1.32.2. MainMenu1 Itemsga "Chiqish" hamda "Start" tugmasini hosil qilamiz. 

Chiqish tugmasi ichiga quyidagi kod yoziladi: 

void __fastcall TForm1::C1Click(TObject *Sender) 

Form5->Visible=1; 



Form1->Close(); 

Start tugmasi ichiga quyidagi kod yoziladi: 



void __fastcall TForm1::S1Click(TObject *Sender) 

   if(!j) 



   { 

    jon=5; 

     Shape29->Brush->Color=clLime; 

     Shape30->Brush->Color=clLime; 

     Shape31->Brush->Color=clLime; 

     Shape32->Brush->Color=clLime; 

     Shape33->Brush->Color=clLime; 

     achko=0; 

     Label1->Caption="0"; 

     j=1; 

   } 

    if(Timer1->Enabled) 



      { 

         Timer1->Enabled=0; 

         Shape1->Enabled=0; 

         Shape2->Enabled=0; 

         Shape3->Enabled=0; 

         Shape4->Enabled=0; 

         Shape5->Enabled=0; 

         Shape6->Enabled=0; 

         Shape7->Enabled=0; 

         Shape8->Enabled=0; 

         Shape9->Enabled=0; 

         Shape10->Enabled=0; 

         Shape11->Enabled=0; 

         Shape12->Enabled=0; 

         Shape13->Enabled=0; 

         Shape14->Enabled=0; 

         Shape15->Enabled=0; 



15 

 

         Shape16->Enabled=0; 



         Shape17->Enabled=0; 

         Shape18->Enabled=0; 

         Shape19->Enabled=0; 

         Shape20->Enabled=0; 

         Shape21->Enabled=0; 

         Shape22->Enabled=0; 

         Shape23->Enabled=0; 

         Shape24->Enabled=0; 

         Shape25->Enabled=0; 

         Shape26->Enabled=0; 

         Shape27->Enabled=0; 

         Shape28->Enabled=0; 

         Shape34->Enabled=0; 

         Shape35->Enabled=0; 

         Shape36->Enabled=0; 

         S1->Caption="Start"; 

         sButton2->Visible=1; 

      } 


      else 

      { 


        Timer1->Enabled=1; 

        Shape1->Enabled=1; 

         Shape1->Enabled=1; 

         Shape2->Enabled=1; 

         Shape3->Enabled=1; 

         Shape4->Enabled=1; 

         Shape5->Enabled=1; 

         Shape6->Enabled=1; 

         Shape7->Enabled=1; 

         Shape8->Enabled=1; 

         Shape9->Enabled=1; 

         Shape10->Enabled=1; 

         Shape11->Enabled=1; 

         Shape12->Enabled=1; 

         Shape13->Enabled=1; 

         Shape14->Enabled=1; 

         Shape15->Enabled=1; 

         Shape16->Enabled=1; 

         Shape17->Enabled=1; 

         Shape18->Enabled=1; 

         Shape19->Enabled=1; 

         Shape20->Enabled=1; 

         Shape21->Enabled=1; 

         Shape22->Enabled=1; 

         Shape23->Enabled=1; 

         Shape24->Enabled=1; 

         Shape25->Enabled=1; 

         Shape26->Enabled=1; 

         Shape27->Enabled=1; 

         Shape28->Enabled=1; 

         Shape34->Enabled=1; 



16 

 

         Shape35->Enabled=1; 



         Shape36->Enabled=1; 

         S1->Caption="Stop"; 

      } 

1.33.  Form1  oynasi  ichki  xususiyatlaridan  OnClouse(ya’ni  oynaning  yopilishi) 



xususiyatiga quyidagi kod yoziladi: 

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) 

   Form5->Visible=1;      



1.34.  Form1  oynasi  ichki  xususiyatlaridan  OnCreate(ya’ni  formaning  ochilishi) 

xususiyatiga quyidagi kod yoziladi: 

void __fastcall TForm1::FormCreate(TObject *Sender) 

   Form1->Height=720; 



   Form1->Top=20; 

   Form1->Left=50; 

   r=rand()%400; 

       Shape1->Top=0-r-75; 

       r=rand()%400; 

       Shape2->Top=0-r-75; 

       r=rand()%400; 

       Shape3->Top=0-r-75; 

       r=rand()%400; 

       Shape4->Top=0-r-75; 

       r=rand()%400; 

       Shape5->Top=0-r-75; 

       r=rand()%400; 

       Shape6->Top=0-r-75; 

       r=rand()%400; 

       Shape7->Top=0-r-75; 

       r=rand()%400; 

       Shape8->Top=0-r-75; 

       r=rand()%400; 

       Shape9->Top=0-r-75; 

       r=rand()%400; 

       Shape10->Top=0-r-75; 

       r=rand()%400; 

       Shape11->Top=0-r-75; 

       r=rand()%400; 

       Shape12->Top=0-r-75; 

       r=rand()%400; 

       Shape13->Top=0-r-75; 

       r=rand()%400; 

       Shape14->Top=0-r-75; 

        //sariq 



17 

 

       r=rand()%1000; 



       Shape15->Top=0-r-300; 

       r=rand()%1000; 

       Shape16->Top=0-r-300; 

       r=rand()%1000; 

       Shape17->Top=0-r-300; 

       r=rand()%1000; 

       Shape18->Top=0-r-300; 

       r=rand()%1000; 

       Shape19->Top=0-r-300; 

       r=rand()%1000; 

       Shape20->Top=0-r-300; 

       r=rand()%1000; 

       Shape21->Top=0-r-300; 

       r=rand()%1000; 

       Shape22->Top=0-r-300; 

       r=rand()%1000; 

       Shape23->Top=0-r-300; 

       //qizil 

        r=rand()%5000; 

       Shape24->Top=0-r-3000; 

       r=rand()%5000; 

       Shape25->Top=0-r-3000; 

       r=rand()%5000; 

       Shape26->Top=0-r-3000; 

       r=rand()%5000; 

       Shape27->Top=0-r-3000; 

       r=rand()%5000; 

       Shape28->Top=0-r-3000; 

       //jon 

       r=rand()%1000; 

       Shape34->Top=0-r-3000; 

       r=rand()%1000; 

       Shape35->Top=0-r-3000; 

       r=rand()%1000; 

       Shape36->Top=0-r-3000; 

135.  Shape1  ichki  xususiyatlaridan  OnMauseDown(ya’ni  ob’yekt  bosilganda) 



xususiyatiga quyidagi kod yoziladi: 

void __fastcall TForm1::Shape1MouseDown(TObject *Sender, 

      TMouseButton Button, TShiftState Shift, int X, int Y) 

      r=rand()%400; 



      Shape1->Top=0-r-75;  //Qolgan 1-14 Shapelarga ham shu kodni yozamiz. 

      achko++; 

136. 15-23 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) 



xususiyatiga quyidagi kod yoziladi: 


18 

 

void __fastcall TForm1::Shape15MouseDown(TObject *Sender, 



      TMouseButton Button, TShiftState Shift, int X, int Y) 

     r=rand()%1000; 



      Shape15->Top=0-r-300;  //Etiborli bo’ling Shape raqami o’zgaradi. Keyingisi //Shape 16 

bo’adi. 


      achko=achko+2; 

137. 24-28 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) 



xususiyatiga quyidagi kod yoziladi: 

void __fastcall TForm1::Shape28MouseDown(TObject *Sender, 

      TMouseButton Button, TShiftState Shift, int X, int Y) 

   r=rand()%5000; 



      Shape28->Top=0-r-3000;  //E’tiborli bo’ling Shape raqami o’zgaradi. Keyingisi //Shape 29 

bo’ladi. 

      achko=achko+3; 

138. 34-36 Shape ichki xususiyatlaridan OnMauseDown(ya’ni ob’yekt bosilganda) 



xususiyatiga quyidagi kod yoziladi: 

void __fastcall TForm1::Shape36MouseDown(TObject *Sender, 

      TMouseButton Button, TShiftState Shift, int X, int Y) 

        r=rand()%1000; 



      Shape36->Top=0-r-1000;  //Etiborli bo’ling Shape raqami o’zgaradi. Oldingisi //Shape 35 

bo’adi. 


 

      if(Shape33->Brush->Color==clLime) 

      { 

         jon++; 

      } 

      else 

      { 

        if(Shape29->Brush->Color!=clLime) 

        { 

           Shape29->Brush->Color=clLime; 

        } 

        else if(Shape30->Brush->Color!=clLime) 

        { 

              Shape30->Brush->Color=clLime; 

        } 

        else if(Shape31->Brush->Color!=clLime) 

        { 

              Shape31->Brush->Color=clLime; 

        } 

        else if(Shape32->Brush->Color!=clLime) 

        { 

              Shape32->Brush->Color=clLime; 




19 

 

        } 



        else if(Shape33->Brush->Color!=clLime) 

        { 

              Shape33->Brush->Color=clLime; 

        } 

          jon++; 

      } 


1.39.  Form1  Caption  xususiyatiga  "Asosiy  o’yin"  deb  yozib  qo’yamiz.  Form1 

BorderStyle xususiyatini bsSingle(ya’ni chuzib bo’lmaydigan) qilamiz; 

1.40. BorderIconsga "[biSystemMenu,biMinimize]" deb yozamiz

 

1.1 rasm.Form1 oynasi tayyor holda. 




Download 1.98 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling