Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: [C++] Lập trình đồ họa trong C++ như thế nào?

  1. #1
    No Avatar
    snowman120885 Khách

    Mặc định [C++] Lập trình đồ họa trong C++ như thế nào?

    Bạn nào chỉ cho mình cách lập trình đồ họa trong C++ có được không ,máy mình có cài turbo c++3.0,nhưng không chạy được đồ họa mình đã thử nhiều nhưng không thành,bạn nao có bộ cài đầy đủ hay có cách nao chỉ cho mình với,Cảm ơn

  2. #2
    No Avatar
    hacgiay Khách

    Trích dẫn Nguyên bản được gửi bởi snowman120885
    Bạn nào chỉ cho mình cách lập trình đồ họa trong C++ có được không ,máy mình có cài turbo c++3.0,nhưng không chạy được đồ họa mình đã thử nhiều nhưng không thành,bạn nao có bộ cài đầy đủ hay có cách nao chỉ cho mình với,Cảm ơn
    chắc bạn thiếu thư viện graphics.h rồi

  3. #3
    No Avatar
    a4bk Khách

    Trích dẫn Nguyên bản được gửi bởi snowman120885
    Bạn nào chỉ cho mình cách lập trình đồ họa trong C++ có được không ,máy mình có cài turbo c++3.0,nhưng không chạy được đồ họa mình đã thử nhiều nhưng không thành,bạn nao có bộ cài đầy đủ hay có cách nao chỉ cho mình với,Cảm ơn
    Hì ! lỗi này là lỗi nặng lắm !!!
    Có khi phải cài lại Win mới chạy được dó bạn à
    Đùa vậy thui bạn tham khảo ở dây nha http://forums.congdongcviet.com/showthread.php?t=387

  4. #4
    Ngày gia nhập
    08 2006
    Bài viết
    19

    chả có lỗi gì đâu, làm như thế này nè:
    khi chạy tc, vào option, linker, librabies sau đó đánh dấu chọn 2 mục dưới cùng(nhớ chỉ 2 mục thôi)

  5. #5
    No Avatar
    snowman120885 Khách

    cảm ơn nhé mình sẽ thử

  6. #6
    Ngày gia nhập
    08 2006
    Bài viết
    32

    Mặc định [C++] Lập trình đồ họa trong C++ như thế nào?

    Các bạn cho mình hỏi trong turbo c++ v4.5 thi dùng chương trình đồ họa như thế nào?
    Khi em khai báo graphics.h thì máy không chạy .Các cách hướng dẫn như trên thi trên v4.5 không có the phải làm the nảo ạ?
    Hãy bày cho em nha ,em đang rất cần.cám ơn nhiều !!??!!

  7. #7
    Ngày gia nhập
    10 2008
    Bài viết
    1

    mình là người đang học C++
    theo mình thì bạn vao oppside va ban tìm từ có LINGKER
    bạn chỏn gaphich la ọk

  8. #8
    Ngày gia nhập
    10 2008
    Bài viết
    12

    ối giời ơi các huynh ơi khai báo như các huynh chỉ bảo rồi vào oftion~>link~>libraries rồi mà cũng không được mặc dù trong TC 3.0 đều có đồ hoạ cả
    cho đệ hỏi thêm lỗi nữa là cái lỗi này hình như có liên quan đến đồ hoạ
    nó báo lỗi như sau"Fatal..\..\..\..\TC\include\iostream.h 19:error directive:must use c++ for the type iostream."
    các huynh giúp đệ với.giờ không biết làm thế nào cả mặc dù trong TC vẫn đầy đủ cả graphics.h và iostream.h
    thế là thế nào nhỉ
    không thì mọi người test hộ đệ cái bài này:bài này chỉ báo có đúng 1 lỗi như trên thôi
    Code:
    #include "conio.h"
    #include "stdio.h"
    #include "iostream.h"
    #include "graphics.h"
    #include "process.h"
    #include "dos.h"
    #define DX 20
    #define DH 30
    
    char s[50]="0000";
    int CellH ,CellW;
    typedef struct Diem {
        int x;
        int y;
        };
    
    typedef struct TagNode {
       Diem data;
       TagNode *Left;
       TagNode *Right;
       };
    typedef TagNode *Node;
    
    typedef struct BSTree{
        Node Root;
    }BSTree;
    
    
    
    
    void init(int &H, int &W)
    {
         H=textheight(s)+8;
         W=textwidth(s)+6;
    }
    void drawTree(Node &T, int x, int y, int width)
    {
       if(!T) return;
       rectangle(x-CellW/2,y-CellH/2,x+CellW/2,y+CellH/2);
       sprintf(s,"%d,%d",T->data.x,T->data.y);
       outtextxy(x,y,s);
       if(T->Left)
       {
           line(x,y+CellH/2,x-width,y+CellH/2+DH);
           drawTree(T->Left,x-width,y+CellH+DH,width-DX);
       }
       if(T->Right)
       {
         line(x,y+CellH/2,x+width,y+CellH/2+DH);
         drawTree(T->Right,x+width,y+CellH+DH,width-DX);
       }
    }
    void drawTree(BSTree T)
    {
       int graphdriver = DETECT,graphmode,errorcode;
       initgraph(&graphdriver,&graphmode,"C:\\TC\\BGI");
       errorcode=graphresult();
       if(errorcode!=grOk)
       {
          printf("graphics error : %s\n ",grapherrormsg(errorcode));
          printf("press any key to halt");
          getch();
          exit(1);
       }
       init(CellH,CellW);
       settextjustify(CENTER_TEXT,CENTER_TEXT);
       drawTree(T.Root,getmaxx()/2,10,60);
       getch();
       closegraph();
    }
    
    /////////////////////////////////////////////////////////////////////
    int insertNode(Node &T,Diem A){
    if(T){
        if(T->data.x==A.x)
    	{
    
    	if(T->data.y==A.y) return(0);
    	if(T->data.y>A.y) return insertNode(T->Left,A);
    	    else return insertNode(T->Right,A);
    
    	}
        else if(T->data.x>A.x)return insertNode(T->Left,A);
    
        else return insertNode(T->Right,A);
        }
    T = new TagNode;
    if(!T)return -1;
    T->data = A;
    T->Left=T->Right=NULL;
    return 1;
    }
    
    /////////////////////////////////////////////////////////////////////
    
    
    
    
    void deleteTree(Node &T){
    if(T){
        deleteTree(T->Left);
        deleteTree(T->Right);
        delete T;
    }
    }
    
    
    
    
    void init(BSTree &T){
    T.Root=NULL;
    }
    
    
    ////////////////////////////////////////////////
    
    
    //tim phan tu nho nhat tren cay con phai
    void searchStandFor(Node &p,Node &q)
    {
    if(q->Left) searchStandFor(p,q->Left);
        else
        {
        p->data.x=q->data.x;
        p->data.y=q->data.y;
        p=q;
    
        q=q->Right;
    
        }
    
    
    }
    
    int delNode(Node &B,Diem A)
    {
    
        if(!B) return(0);
        if(B->data.x>A.x)
    	return delNode(B->Left,A);
        if(B->data.x<A.x)
    	return delNode(B->Right,A);
        if(B->data.x==A.x && B->data.y<A.y)
    	return delNode(B->Right,A);
        if(B->data.x==A.x && B->data.y>A.y)
    	return delNode(B->Left,A);
    
        else{
    	Node p=B;
    	if(!B->Left)B=B->Right;
    	 else if(!B->Right)B=B->Left;
    		else searchStandFor(p,B->Right);
        delete p;
        return(1);
        }
    }
    
    
    
    
    
    int searchNode(BSTree &T,Diem A)
    {
    Node p=T.Root;          //tim kiem Node khong xai de quy
    
    while(p!=NULL)
        {
        if(A.x<p->data.x) p=p->Left;
    	else if(A.x>p->data.x) p=p->Right;
    	    else if(A.x==p->data.x)
    		{
    		if(A.y<p->data.y) p=p->Left;
    		else if(A.y>p->data.y) p=p->Right;
    		else return(1);
    		}
    
        }
    return(0);
    
    }
    
    
    
    
    void inputPoint(Diem &A)
    {
    printf("nhap x : ");
    fflush(stdin);       //xoa bo dem ban phim
    scanf("%d",&A.x);
    printf("nhap y : ");
    fflush(stdin);
    scanf("%d",&A.y);
    }
    
    
    ///////////////////////////////////////////////
    
    int getFromFile(char *a,BSTree &T)
    {
    FILE *f;
    
    char c;
    
    f = fopen(a,"rt");
    
    if(f==NULL)return 0;
    
    Diem A;                        //diem co dang (x,y)
    
    while(!feof(f))
        {
        fscanf(f,"%c%d%c%d%c",&c,&A.x,&c,&A.y,&c);
        insertNode(T.Root,A);
        }
    c=NULL;
    
    
    fclose(f);
    return 1;
    }
    
    
    
    //////////////////////////////////////////////////////////////////
    
    void PrintTr(Node B,FILE *f)
    {
    if(B)
        {
        PrintTr(B->Left,f);
    
        fprintf(f,"(%d,%d)\n",B->data.x,B->data.y);
    
        PrintTr(B->Right,f);
        }
    }
    
    
    //////////////////////////////////////////////////////////////////
    
    int write2File(char *a,BSTree T)
    {
    FILE *f;
    int n;
    
    f = fopen(a,"wt");
    
    if(!f)return 0;
    
    PrintTr(T.Root,f);
    
    fclose(f);
    return 1;
    }
    
    
    
    
    /////////////////////////////////////////////////////////////////////
    
    void main()
    {
    
    clrscr();
    BSTree T;
    init(T);
    Diem A;
    char s[30];
    char m;
    
    
    
    
    
    //file input.txt co dang cap diem (x,y), moi dong la 1 cap diem
    
    
    
    printf("nhap duong dan file du lieu : ");
    gets(s);
    
    getFromFile(s,T);
    if(T.Root==NULL)
        {
        printf("\nkhong tim thay file hoac du lieu cua file bi loi\n");
        getch();
        exit(0);
        }
    
    drawTree(T);
    
    Menu:
    clrscr();
    
    printf("\n\tCHUONG TRINH QUAN LY CAC DIEM TREN 2D BANG CAY NHI PHAN TIM KIEM");
    printf("\n\n\t\t\t ====>MENU CHINH<====\n\n");
    printf("\t 1>/Kiem tra su ton tai cua diem tren cay.\n"); //49
    printf("\t 2>/Them diem vao cay.\n");                     //50
    printf("\t 3>/Xoa diem bat ki tren cay.\n");              //51
    printf("\t 4>/Huy toan bo cay.\n");                       //52
    printf("\t 5>/Luu du lieu xuong file.\n");                //53
    printf("\t 6>/Ve cay.\n");                                //54
    printf("\t-------------------------------------------\n");
    printf("\t 7>/Thoat luon.\n\n\n");                        //55
    printf("Ban chon : ");
    
    do
    m=getch();
    while(m!=49&& m!=50&& m!=51&& m!=52&& m!=53&& m!=54&& m!=55);
    
    
    if(m==49) goto Check;
        else if(m==50) goto Addpoint;
        else if(m==51) goto Deletepoint;
        else if(m==52)
    	{
    	deleteTree(T.Root);
    	init(T);
    	clrscr();
    	gotoxy(17,10);
    	printf("Cay da duoc huy thanh cong, khong con diem nao ca.");
    	getch();
    	goto Menu;
    	}
        else if(m==53) goto Writefile;
        else if(m==54)
    	{
    	if(!T.Root)
    	    {
    	    clrscr();
    	    gotoxy(17,10);
    	    printf("Cay khong con diem nao ca -->Khong co gi de ve.");
    	    getch();
    	    }
    	    else drawTree(T);
    
    	goto Menu;
    	}
        else if(m==55) goto End;
    
    
    
    
    
    
    
    
    /////////////////////////////////////////////////////////////////////////
    Writefile:
    clrscr();
    if(T.Root==NULL)
        {
        printf("\nBSTree khong con du lieu thi luu xuong file lam gi");
        getch();
        }
    	else
    	{
    	printf("\nnhap duong dan file can xuat du lieu : ");
    	fflush(stdin);
    	gets(s);
    	if(write2File(s,T))
    	    {
    	    write2File(s,T);
    	    printf("\n\t\tDu lieu da luu xuong file thanh cong.");
    	    delay(600);
    	    }
    		else
    		{
    		printf("\nO cung ko du cho trong hoac duong dan sai. ");
    		getch();
    		}
    	}
    goto Menu;
    
    //////////////////////////////////////////////////////////////////////////
    Check:
    clrscr();
    printf("\n\tNhap toa do can kiem tra\n");
    inputPoint(A);
    if(searchNode(T,A))
        {
        printf("======>Diem ban vua nhap da co trong BSTree");
        getch();
        }
        else
            {
            printf("======>Diem ban vua nhap khong co trong BSTree");
            getch();
            }
    goto Menu;
    
    ///////////////////////////////////////////////////////////////////////////
    Addpoint:
    clrscr();
    printf("\n\tNhap diem can them : \n");
    inputPoint(A);
    if(!searchNode(T,A))
        {
        insertNode(T.Root,A);
        printf("\t\tDa them thanh cong");
        delay(600);
        drawTree(T);
        }
        else
            {
            printf("\n\t======>Da co diem nay trong BSTree\n");
            getch();
            }
    goto Menu;
    
    ///////////////////////////////////////////////////////////////////////////
    
    Deletepoint:
    clrscr();
    if(!T.Root)
        {
        printf("Cay khong con diem nao de xoa ca.");
        getch();
        goto Menu;
        }
    
    printf("\n\tNhap diem can xoa : \n");
    inputPoint(A);
    
    if(searchNode(T,A))
        {
        delNode(T.Root,A);
        printf("\t\tDa xoa thanh cong");
        delay(600);
        }
        else
            {
            printf("Khong co diem nay trong BSTree");
            getch();
            }
    
    if(!T.Root)
        {
        clrscr();
        printf("\n\t\tBSTree khong con diem nao ca");
        getch();
        goto Menu;
        }
        else drawTree(T);
    
    goto Menu;
    
    ///////////////////////////////////////////////////////////////////////////
    End:
    deleteTree(T.Root);
    }

  9. #9
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Ủa mình biên dịch được mà, có báo lỗi gì đâu nhỉ ?
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  10. #10
    Ngày gia nhập
    03 2008
    Bài viết
    2

    mọi người chi cho minh với:
    tại sao minh cài borland C 3.0. mãi ma ko dc.
    minh dang sử dụng dev-c nhung ko biết làm thế nào dể khởi động chương trinh đô họa cả.
    Thanks!!!!!

Các đề tài tương tự

  1. Làm Chữ chạy trên form C# như thẻ <marquee> trong HTML thế nào?
    Gửi bởi magnet241 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 05-04-2012, 11:55 AM
  2. In thẻ,hóa đơn từ các textbox,combobox,datetimepicker trong form C# như thế nào?
    Gửi bởi snoit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 04-04-2012, 03:13 PM
  3. Game Tạo Form trong suốt trong C# tựa game Thần Võ như thế nào?
    Gửi bởi tocvang_pro trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 21-09-2011, 04:21 PM
  4. Sử lí như thế nào khi nhập rất chậm trong trình xoạn thảo trong devC
    Gửi bởi toansvcn trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 13
    Bài viết cuối: 23-05-2011, 10:04 PM
  5. Code tìm kiếm trong cây nhị phân trong C++. Lỗi chỉ tìm được từ đầu tiên trong file thôi sửa thế nào?
    Gửi bởi elvish trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 1
    Bài viết cuối: 11-04-2010, 09:43 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn