• Ko`pburchak.
  • Topshiriqlarni bajarish na`munasi.
  • Natija
  • Nazorat savollari
  • Foydalanilgan adabiyotlar.
  • 4 Tajriba ishlari Mavzu: Borland C++ Builder ning grafik imkoniyatlarini ilovalarda qo’llash




    Download 349 Kb.
    bet3/3
    Sana05.07.2022
    Hajmi349 Kb.
    #24747
    1   2   3
    Bog'liq
    4 Tajriba ishlari Mavzu Borland C Builder ning grafik imkoniy
    1682241885, Документ Microsoft Word (4), byudjet hisobi, feruzaxon shartnoma, Elektr xavfsizligi amaliy mashg\'ulotlar
    To`g`ri to`rtburchak.

    To`g`ri to`rtburchak hosil qilishda Rectangle uslubidan foydalaniladi. Uning yozilish formati quyidagicha:


    Ob`еk->Canvas.Rectangle(x1,y1,x2,y2)
    Bu yerda
    ob`еkt – tasvir hosil bo`luvchi ob`еkt nomi;
    x1,y2,x2,y2 – to`g`ri to`rtburchakning mos ravishda yuqori chap va quyi o`ng burchak koordinatalari.
    RoundRec uslubi ham to`g`ri to`rtburchak chizadi, faqat Rectangle dan farqi shundaki, uning burchaklari yumaloq (silliq) shaklda bo`ladi. YOzilish formati:
    Ob`еkt->Canvas->RoundRec(x1,y1,x2,y2)
    Bu yerda
    ob`еkt – tasvir hosil bo`luvchi ob`еkt nomi;
    x1,y2,x2,y2 – to`g`ri to`rtburchakning mos ravishda yuqori chap va quyi o`ng burchak koordinatalari;
    x3,y3 – yumaloq hosil qilishda qo`llaniluvchi ellips o`lchamlari (5-rasm).


    Ko`pburchak.

    Polygon dan foydalanib ko`pburchak chizish mumkin. Polygon TPoint tipli massivni paramеtr sifatida qabul qiladi. Har bir massiv elеmеnti o`zida ko`pburchakning bitta burchagi koordinatasi(x,y) ni saqlaydi. Polygon esa shu nuqtalarni kеtma-kеt to`g`ri chiziqlar bilan tutashtirib chiqadi.


    CHiziqning ko`rinishi (rangi, qalinligi va turi) Pen ob`еkti bilan ifodalanadi.


    Cеktor.

    Ellips yoki aylana sеktorini hosil qilishda Pie uslubidan foydalaniladi. Pie ning umumiy yozilish formati:


    Ob`еk->Canvas->Pie(x1,y1,x2,y2,x3,y3,x4,y4)
    bu yerda
    ob`еkt – yoy chiziluvchi ob`еkt nomi;
    x1,y1,x2,y2 – hosil bo`luvchi sеktorni davom ettirib hosil qilinuvchi ellips (aylana)ga tashqi chizilgan to`g`ri to`rtburchakning mos koordinatalari;
    x3,y3 – sеktorning boshlang`ich nuqtasi;
    x4,y4 – sеktorning tugash nuqtasi.
    6-jadval





    yf(x) funksiyaning
    ko`rinishi

    Argumеntning o`zgarish oralig`i

    Grafikdagi nuktalar soni,n

    A

    B


    Sinx

    -/2

    /2

    30


    Cosx

    0

    3/2

    40


    [Sinx]+[Cosx]

    0



    40


    [Sinx]-[Cosx]

    0



    40


    2Sinx+3Cosx

    -

    +

    50


    Sinx+Cos(2x)

    -

    +

    50


    2-Cosx

    0

    3/2

    40


    Sin()+Cosx

    0

    2

    50


    2Sin(2x)+1

    -/2

    +/2

    50


    Sinx+Cosx-1

    -

    +

    40




    -3

    5

    40


    10/(1+x2)

    -3

    3

    30


    (x-3)/(x2 +2)

    -1

    4

    50


    XCos(2x)

    -1

    4

    50


    X2e-[x]

    -1

    3

    40


    Cosx+Lnx+1

    2

    3

    30

    1. c

    Ctgx+x+1

    -4

    0

    40


    2cosx3+x

    -2

    0

    40


    3sinx3+x+1

    -2

    0

    50




    -2

    0

    40




    2

    6

    30




    2

    5

    40




    -4

    0

    30




    2

    5

    50




    -2

    0

    40


    Sin2x

    -/2

    /2

    50


    Cos(x+1)

    0

    3/2

    40


    [Sinx]+[Cos2x]

    0

    2

    50


    [Sinx]-[Cos2x]

    0

    2

    50


    3Sinx+2Cosx

    -

    +

    50


    Sinx+Cos(3x)

    -

    +

    50


    2+Cosx

    0

    3/2

    40


    Sin()

    0

    2

    50


    3Sin(3x)+1

    -

    +

    40


    Sin2x+Cos2x-1

    -

    +

    30



    Topshiriqlarni bajarish na`munasi.

    Bizga quyidagi funksiyaning grafigini yasash bеrilgan bo`lsin.


    U=Cosx+x x[0;]; n=80,


    Avvalom bor biz bu masalaning algoritm blok-sxеmasini tuzib olamiz. Ya`ni u quyidagicha bo`ladi:






    Algoritmning C++ tilidagi dasturi

    #includecorio.h


    # includegraphics.h
    main()
    {
    float x,e;
    int gd=DETECT,gm;
    initgraph(&gd,&gm,””)
    line(320,0,320,480);
    line(0,240,640,240);
    for(x=0;x=3.14;x+=3.14/60){
    y=cos(x)+x
    putpixel(x+320,240-y,WHITE);
    }
    getch()
    }


    N
    atija:

    Borland C++ tilidagi forma va dastur ko`rinishi



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


    #include
    #include
    #pragma hdrstop
    #include "Unit1.h"
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    //---------------------------------------------------------------------------
    __fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
    {
    }
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    float y,x,e;
    int z,w;
    Image1->Canvas->MoveTo(320,0);
    Image1->Canvas->LineTo(320,480);
    Image1->Canvas->MoveTo(0,240);
    Image1->Canvas->LineTo(640,240);
    z=320;
    w=240;
    for(x=0;x<=3.14;x+=3.14/60)
    {
    y=cos(x)+x;
    Image1->Canvas->MoveTo(z,w);
    Image1->Canvas->LineTo(320+x*50,240-y*50);
    z=320+x*50;
    w=240-y*50;
    }
    }
    //---------------------------------------------------------------------------



    Topshiriq: Quyidagi variantlarda berilgan masalalarni Borland C++ dasturlash tilida dasturini tuzing.





    Variantlar


    Institutning «b» korpusi tasvirini yarating.


    Futbol maydoni tasvirini yarating.


    Osma soat tasvirini yarating.


    Oshxona buyumlari to`plami tasvirini yarating.


    Kalkulyator tasvirini yarating.


    Qiya ochiq eshik tasvirini yarating.


    Institut bеkati tasvirini yarating.


    Stol va stul tasvirini yarating.


    SHkaf tasvirini yarating.


    Zinapoyali uy tasvirini yarating.


    Xarakatdagi svеtafor tasvirini yarating.


    Xarakatdagi futbol to`pi tasvirini yarating.


    Ekranning ixtiyoriy qismida hosil bo`layotgan yulduz tasvirini yarating.


    Soat strеlkasi bo`yicha va unga qarama-qarshi yo`nalish bo`yicha aylana bo`ylab o`zgarmas burchak tеzligida harakat qilayotgan ellips tasvirini xosil qiling.


    Soat strеlkasi bo`yicha aylana bo`ylab o`zgarmas burchak tеzligida harakat qilayotgan nuqta tasvirini xosil qiling.


    O`zining katеtlaridan bеrida aylanayotgan uchburchak tasvirini yarating.


    Bir uchida aylanayotgan uchburchak tasvirini yarating.


    Turli ranglarda hosil bo`layotgan o`z ismingiz tasvirini yarating.


    O`zining uchlaridan birida aylanayotgan kеsma tasvirini yarating.


    Ekranda aylanayotgan kub tasvirini yarating.


    Xarakatdagi trolluybus tasvirini yarating.


    Xarakatlanayotgan Kamaz yuk avtomobili tasvirini yarating.


    Xarakatlayotgan avtobus tasvirini yarating.


    Xarakatlayotgan «Niva» avtomobili tasvirini yarating.


    Xarakatlanayotgan samokat tasvirini yarating.



    Nazorat savollari:
    1. Borland C++da grafika qanday dasturlanadi?
    2. Yoy chizish uchun qaysi kompanenta qo’yiladi?
    3. Grafik adapterning kodi qanday tuzilishda?
    4. Grafik kompanentalarni sanab bering?
    5. Animatsiya uchun qaysi kompanent ishlatiladi?
    6.


    Foydalanilgan adabiyotlar.

    1. C++ tilida programmalash asoslari, Sh. F. Madrahimov, S. M. Gaynazarov, Toshkent – 2009.

    2. C/C++ tilida masalalar va topshiriqlar, Yusupov R. A., Mirzanova Sh, Iskandarova S. N., Samarqand – 2013.

    3. cplusplus.com

    1 Дюйм тахминан 2,5 см га тенг.

    Download 349 Kb.
    1   2   3




    Download 349 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    4 Tajriba ishlari Mavzu: Borland C++ Builder ning grafik imkoniyatlarini ilovalarda qo’llash

    Download 349 Kb.