kết quả từ 1 tới 2 trên 2

Có bạn nào biết code đồ họa vẽ mô hình cây tổng quát trong winform c++ thì vẽ giúp mình với

  1. #1
    Ðến Từ
    Thái Nguyên
    Thành Viên Thứ: 267892
    Giới tính: Nữ
    Bài gửi
    2

    Có bạn nào biết code đồ họa vẽ mô hình cây tổng quát trong winform c++ thì vẽ giúp mình với

    Có bạn nào biết code đồ họa vẽ cây tổng quát trong winform visual c++ thì vẽ giúp mình với, mình đang cần gấp lắm, code thuật toán c++ đây nha: Đề bài là vẽ mô hình cây tổng quát dùng visual c++ 2010 theo thuật toán duyệt theo thứ tự sau. Cảm ơn các bạn nha.
    Code C++

    #define MAXLENGTH 100 //chi so toi da cua mang
    #define NIL -1
    typedef char DataType;
    typedef int Node;
    typedef struct {
    DataType Data[MAXLENGTH]; //Luu gia tri cua nut
    Node Parent[MAXLENGTH]; //Cha cua nut i se luu o vi tri i trong mang
    int MaxNode;
    }Tree;
    //Khoi tao cay rong
    void MakeNull_Tree(Tree *T)
    {
    (*T).MaxNode = 0;
    }
    //Kiem tra cay rong
    int EmptyTree(Tree T)
    {
    return T.MaxNode == 0;
    }
    //Xac dinh nut cha cua nut tren cay
    Node Parent(Node n, Tree T)
    {
    if (EmptyTree(T) || (n>T.MaxNode - 1))
    return NIL;
    else
    return T.Parent[n];
    }
    //Xac dinh gia tri cua nut tren cay
    DataType Label_Node(Node n, Tree T)
    {
    if (!EmptyTree(T) && (n <= T.MaxNode - 1))
    return T.Data[n];
    }
    //Xac dinh nut goc trong cay
    Node Root(Tree T)
    {
    if (!EmptyTree(T))
    return 0;
    else
    return NIL;
    }
    //Ham xac dinh con trai nhat cua mot nut
    Node LeftMostChild(Node n, Tree T)
    {
    Node i;
    int found;
    if (n<0)
    return NIL;
    i = n + 1;
    found = 0;
    while ((i <= T.MaxNode - 1) && !found)
    if (T.Parent[i] == n)
    found = 1;
    else i = i + 1;
    if (found)
    return i;
    else
    return NIL;
    }
    //Ham xac dinh anh em ruot phai cua mot nut
    Node RightSibling(Node n, Tree T)
    {
    Node i, parent;
    int found;
    if (n<0)
    return NIL;
    parent = T.Parent[n];
    i = n + 1;
    found = 0;
    while ((i <= T.MaxNode - 1) && !found)
    if (T.Parent[i] == parent)
    found = 1;
    else i = i + 1;
    if (found)
    return i;
    else
    return NIL;
    }
    //Duyet theo thu tu sau
    void PostOrder(Node n, Tree T)
    {
    Node i;
    i = LeftMostChild(n, T);
    while (i != NIL){
    PostOrder(i, T);
    i = RightSibling(i, T);
    }
    printf("%c ", Label_Node(n, T));
    }
    //Doc cay
    void ReadTree(Tree *T){
    int i;
    MakeNull_Tree(&*T);
    do {
    printf("Cay co bao nhieu nut? ");
    scanf_s("%d", &(*T).MaxNode);
    } while (((*T).MaxNode<1) || ((*T).MaxNode>MAXLENGTH));
    printf("Nhap nhan cua nut goc: ");
    fflush(stdin);
    scanf_s("%c", &(*T).Data[0]);
    (*T).Parent[0] = NIL; /* nut goc khong co cha */
    for (i = 1; i <= (*T).MaxNode - 1; i++){
    printf("Nhap cha cua nut %d: ", i);
    scanf_s("%d", &(*T).Parent[i]);
    printf("Nhap nhan cua nut %d: ", i);
    fflush(stdin);
    scanf_s("%c", &(*T).Data[i]);
    }
    }


    int _tmain(int argc, _TCHAR* argv[])
    {
    Tree T;
    printf("Nhap du lieu cho cay tong quat\n");
    ReadTree(&T);
    printf("\nDanh sach duyet hau tu cua cay vua nhap la\n");
    PostOrder(Root(T), T);
    system("pause");
    }


    -Kết quả:
    Nhập dữ liệu cho cây tổng quát
    Cây có bao nhiêu nút 8
    Nhập nhãn của nút gốc: A
    Nhập cha của nút 1: 0
    Nhập nhãn của nút 1: B
    Nhập cha của nút 2: 0
    Nhập nhãn của nút 2: C
    Nhập cha của nút 3: 1
    Nhập nhãn của nút 3: D
    Nhập cha của nút 4: 1
    Nhập nhãn của nút 4: E
    Nhập cha của nút 5: 4
    Nhập nhãn của nút 5: F
    Nhập cha của nút: 4
    Nhập nhãn của nút 6: G
    Nhập cha của nút: 4
    Nhập nhãn của nút 7: H
    Danh sách duyệt hậu tự của cây vừa nhập là: D F G H E B C A.
    Quick reply to this message Trả lời       


  2. #2
    Ðến Từ
    Hà Nội
    Thành Viên Thứ: 247344
    Giới tính: Nữ
    Bài gửi
    10.034

    Reply: Có bạn nào biết code đồ họa vẽ mô hình cây tổng quát trong winform c++ thì vẽ giúp mình

    1 thời sinh viên, giờ mấy dạng kiểu này quên hết rồi bạn
    Thực sự thì mình chưa thấy ai lại hiền lành, dễ thương và tốt bụng như bạn Khách vậy