Hiển thị kết quả từ 1 đến 9 / 9
  1. #1
    Tham gia
    18-08-2007
    Bài viết
    32
    Like
    0
    Thanked 0 Times in 0 Posts

    Cần chú ý ! Bài toán 8 quân hậu sao khó thế!!!!!!!

    em có code của bài toán 8 quân hậu nhưng đọc mãi mà không hiểu, mong các bác giúp cho: em không hiểu ở chổ là tại sao cheoxuoi[i+j] và cheonguoc[i-j=7].Thêm một điều nữa là kết quả bài toàn in ra màn hình khi thực thi chương trình nhìn không hiểu gì hết?
    mong các anh chỉ giúp!!!!!!!!cám ơn các anh nhiều!!!!!!!!!!!


    /* Bai toan tam hoang hau */
    #include <stdio.h>
    #include<conio.h>
    int dong[8], cot[8], cheoxuoi[15], cheonguoc[15];

    int socach = 0;

    void print ()
    {
    int i;
    printf("\n");

    if (socach %5==0)


    getch();

    for (i=0; i<8; i++)
    {
    printf("%3d", dong[i]);
    }
    }

    void thu(int i)
    {
    int j;
    for (j=0; j<8; j++)
    {
    if (cot[j] == 1 && cheoxuoi[i+j] ==1 && cheonguoc[i-j+7] == 1)
    {
    dong[i] = j;
    cot[j] = 0;
    cheoxuoi[i+j] = 0;
    cheonguoc[i-j+7] = 0;
    if (i<7)
    thu(i+1);
    else
    {
    print();
    socach++;
    }
    cot[j] = 1;
    cheoxuoi[i+j] = 1;
    cheonguoc[i-j+7] = 1;
    }
    }
    }

    void tim()
    {
    int i, q;

    for (i=0; i<8; i++)
    {
    cot[i] = 1;
    dong[i] = -1;
    }
    for (i=0; i<15; i++)
    {
    cheoxuoi[i] = 1;
    cheonguoc[i] = 1;
    }
    thu(0);
    }

    void main()
    {
    tim();
    getch();
    }
    Quote Quote

  2. #2
    Tham gia
    31-03-2004
    Bài viết
    77
    Like
    0
    Thanked 0 Times in 0 Posts
    Đường chéo xuôi là đường chéo có hướng từ đình trái-trên xuống đỉnh phải-dưới của bàn cờ. Các ô cùng nằm trên đường chéo xuôi thì có giá trị (hàng+cột) bằng nhau. Tương tự với các ô nằm trên các đường chéo song song với đường chéo xuôi. Do với 2 đường chéo khác nhau, tổng này cũng khác nhau nên con số này được dùng làm key cho mảng cheoxuoi

    Suy luận ngược lại với đường chéo ngược.
    Chưa chạy thử chương trình của bạn nhưng tôi đoán là nó in ra 8 số, tương ứng với vị trí hàng của 8 con hậu ứng với các cột từ 1 đến 8

  3. #3
    Tham gia
    01-03-2009
    Bài viết
    220
    Like
    0
    Thanked 0 Times in 0 Posts
    bạn thử dùng cách này xem,xem bàn cờ như 1 ma trận 8x8,vị trí nào có quân hậu thì phần tử đó mang giá trị 1,vị trí mà quân hậu ko thể đặt(vì các quân hậu đặt trước) mang giá trị -1,các vị trí còn lại thì =0,rồi bạn dùng mảng 2 chiều để làm.

  4. #4
    Tham gia
    18-08-2007
    Bài viết
    32
    Like
    0
    Thanked 0 Times in 0 Posts
    em hiểu được chéo xuôi, chéo ngược rồi nhưng không hiểu cụ thể là đường nào? em nghĩ 2 đường chéo chính giữa là chéo xuôi 0 và chéo ngược 0, còn chéo xuôi 1....14 và chéo ngược 1......14 là đường nào?
    Ví dụ:
    đường cheoxuoi[0] là i = 0 và j= 0
    còn cheoxuoi[1]là đường ? i=0và j=1 hay 1=1 và j=0?
    Tương tự cheonguoc cũng vậy? mong các bác chỉ giúp em rất cám ơn

    [=========> Bổ sung bài viết <=========]

    Cám ơn bác PDAH và bác KimDuQuan đã chỉ giúp!!!!!!!!!thank u so much!!!!!!!!!!
    Được sửa bởi ndphuong74 lúc 20:32 ngày 30-03-2009 Reason: Bổ sung bài viết

  5. #5
    Tham gia
    04-03-2009
    Bài viết
    19
    Like
    0
    Thanked 0 Times in 0 Posts
    mình thì thậm chí nó còn không chạy cơ, sao vậy nhỉ

  6. #6
    Tham gia
    05-06-2009
    Location
    Tuyên Quang
    Bài viết
    656
    Like
    0
    Thanked 4 Times in 3 Posts
    Kiếm quyển DSAP mà đọc.
    Trong đấy cụ thể lắm.
    GG đầy

  7. #7
    Tham gia
    04-03-2009
    Bài viết
    19
    Like
    0
    Thanked 0 Times in 0 Posts
    cho mình link được không, lười tìm quá. Dạo này bài tập lớn nhiều quá, mệt phờ người

    [=========> Bổ sung bài viết <=========]

    không hiểu sao lại lấy i-j+7 nhỉ??
    Được sửa bởi Tiểu Lê lúc 21:40 ngày 26-10-2009 Reason: Bổ sung bài viết

  8. #8
    Tham gia
    14-09-2009
    Bài viết
    1
    Like
    0
    Thanked 0 Times in 0 Posts
    Chào các bạn, mình muốn tìm đường chéo của 1 ô bất kỳ thì làm như thế nào vậy ???

  9. #9
    Tham gia
    19-12-2009
    Bài viết
    3
    Like
    0
    Thanked 0 Times in 0 Posts
    Ui zoi, Viet code the lam sao chay thanh cong troi! (Minh khong noi ve y tuong dau nha!)
    Cai ma cheo xuoi voi nguoc ay thi ban cu theo cheo xuoi va nguoc da quy dinh nghen!
    Ve cai ban co ra, danh so cheo phu di!
    Ak, hinh nhu cai nay duoc ren luyen trong mon Cau Truc Du Lieu Va Giai Thuat roi ma.
    Bay gio minh dang viet bai toan nay bang duyet rong va duyet sau nek!
    Gắng lên bạn, có gì liên hệ ĐT mình nói thêm cho! 01227470023.

Bookmarks

Quy định

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