Şimdi Ara

c programllama bilen varsa lütfen yardım etsin

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
2
Cevap
0
Favori
412
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • hocamız bi ödev verdi ama yapamıyroum bende sizlerden yardım alayım dedim bana yardım ederseniz sizlere çok minnettar kalıcam

    ödevim: ekrana kare dikdörtgen daire ve üçgen çizdircez bunu c++ dilini kullanrak yapcaz ama bi türlü yapamadım

    lütfen bana yardım edin



  • 11. Grafik

    Basit grafik işlemleri nasıl gerçekleştirilir (sorumlu değiller).
    Normal çalışma anında text ekranda (25, 80) boyutlarında.
    * void textbackground(int newcolor); : alt zemin rengi
    * void textcolor(int newcolor); : yazı rengi
    * void textattr(int newattr); 8 bitlik sayı. hem alt zemin hem de yazı rengi
    verilir Bbbbffff (B = blink)

    * void highvideo(void); Yazı parlaklığı
    * void lowvideo(void);
    * void normvideo(void);

    Bu işlevler doğrudan ekrana yazan deyimlere yöneliktir (cprintf, cput)
    #include <conio.h>
    main()
    {
    int i;
    textbackground(BLACK);

    clrscr();

    for (i=0; i<=15;i++) {
    textcolor(i);
    cputs("HÜSEYİN PEKTAŞ\r\n");
    }

    getch();
    }

    Grafik çizimi için bilgisayarın grafik modunda olması gerekir.

    /*
    * void far initgraph(int far *graphdriver, int far *graphmode, char far *pathtodriver);
    Grafik sistemini verilen degerlere gore ayarlar. Grafik komutlarini kullanmadan once calistirilmalidir.

    * closegraph; Grafik sistemini kapatir.
    * graphresult: int; Grafik islemi ile ilgili bilgi verir.
    * char *far grapherrormsg(int errorcode); Belirtilen grafik hatasi icin mesaji verir.


    * line(x1, y1, x2, y2);
    * lineto(x, y); Bulunulan yerden (x,y) ye kadar çizer
    * linerel(x, y); Bulunulan yerin (x,y) ötesine kadar çizer
    * moveto(x, y);

    * void far cleardevice(void); Grafik ekranını siler

    * circle(x, y , r);

    * putpixel(x, y, renk);
    * getpixel(x, y); Belirtilen noktanin piksel degerini verir

    * getx; Bulunulan
    * gety; noktalar

    * getmaxx; Maksimum olabilecek
    * getmaxy; noktalar
    * outtext(char far *) : Bulunulan yere metni yazar
    * outtextxy(x, y, char far *) : Belirtilen yere metni yazar

    * int far getcolor(void); : çizim rengi öğren
    * void far setcolor(int color); : çizim rengini değiştir

    * int far getbkcolor(void); : alt zemin rengini öğren
    • void far setbkcolor(int color);: alt zemin rengini değiştir
    EGA_BLACK
    EGA_BLUE
    EGA_GREEN
    EGA_CYAN
    EGA_RED
    EGA_MAGENTA
    EGA_LIGHTGRAY
    EGA_BROWN 0
    1
    2
    3
    4
    5
    7
    20 EGA_DARKGRAY
    EGA_LIGHTBLUE
    EGA_LIGHTGREEN
    EGA_LIGHTCYAN
    EGA_LIGHTRED
    EGA_LIGHTMAGENTA
    EGA_YELLOW
    EGA_WHITE
    56
    57
    58
    59
    60
    61
    62
    63
    #include <graphics.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <conio.h>
    main()
    {
    int gd, gm, hata;
    int x, y;

    gd = DETECT; /* ekran sürücüsünü otomatik tanı */
    /* CGA, HERC, VGA..*/

    initgraph(&gd, &gm, "c:\\diller\\tc3\\bgi\\");
    /* gd gm
    VGA ¦ VGALO ¦ 0 ¦ 640 x 200 ¦ 16 color¦ 2
    9 ¦ VGAMED ¦ 1 ¦ 640 x 350 ¦ 16 color¦ 2
    ¦ VGAHI ¦ 2 ¦ 640 x 480 ¦ 16 color¦ 1
    */
    hata = graphresult();

    if (hata != grOk) /* grOk = 0 tanımlı */
    {
    printf("Grafik hatası: %s\n", grapherrormsg(hata));
    getch();
    exit(1);
    }
    x = getmaxx();
    y = getmaxy();
    setbkcolor(EGA_RED);
    setcolor(EGA_YELLOW);
    cleardevice();

    line(0, 0, 0, y);
    line(0, y, x, y);
    line(x, y, x, 0);
    line(x, 0, 0, 0);

    getch();

    cleardevice();

    moveto(50, 50);
    lineto(50, 100);
    lineto(100,100);
    lineto(100,50);
    lineto(50, 50);

    getch();

    closegraph();
    }

    Örnek 11.1: İşlev çizimi
    #include <graphics.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <math.h>

    double fonk(double x);
    double fonk1(double x);

    main()
    {
    int gd, gm, hata;
    double x, y;
    int orgx, orgy;

    gd = DETECT;
    initgraph(&gd, &gm, "c:\\diller\\tc3\\bgi\\");
    hata = graphresult();
    if (hata != grOk)
    {
    printf("Grafik hatası: %s\n", grapherrormsg(hata));
    getch();
    exit(1);
    }

    orgx = 20;
    orgy = getmaxy() / 2;

    line(0, orgy, getmaxx(), orgy); /* x ekseni */
    line(20, 0, 20, orgy+50); /* y ekseni */

    outtextxy(getmaxx()-50, orgy-10, "Zaman");
    outtextxy(22, 0, "Volt");

    for (x = 0; x< 6.28; x = x + 0.005) {
    y = fonk1(x);
    putpixel(orgx + 80*x, orgy - y, 2); /* renk yeşil EGA_GREEN*/
    /* - çünkü eksenin üzerinde çizsin */

    }

    getch();

    closegraph();
    }

    double fonk(double x)
    {
    double y;
    y = 100 * sin(10 * x);
    return y;
    }
    double fonk1(double x)
    {
    double y;
    y = 1 - exp(-x);
    return 200*y;
    }







    azcık uğraşabilirsin.Bunlar dediklerini yapmak için fazlasıyla yeterli.
    Uğraşmadan programcılık öğrenilmez...




  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.