Trò chơi Cờ Caro bằng C++

2,894 views
Skip to first unread message

Nông Ngọc Hoai

unread,
Mar 10, 2013, 3:23:02 AM3/10/13
to b2tind4...@googlegroups.com
Cuối tuần nghỉ ngơi làm vài ván, hì.
Dự kiến chương trình có thể chơi với máy nhưng hiên tại chỉ chơi được chế độ 2 người chơi với nhau thui, hì.
- File nguồn và file exe đã được đính kèm bên dưới. 
* Giới thiệu sơ qua:
- Thuật toán: dùng thủ tục Goto(int, int) (được xây dựng trên thư viện windows.h) để nhập O, X vào các vị trí  theo lượt (Chẵn lượt O, lẻ lượt X). Sau đó dùng 2 thủ tục kiểm tra xem sự lần lượt của các O và X nếu bên nào đủ 5 cái liền kề thì bên đó thắng! (2 thủ tục trong chương trình là: DKOChienThang() và  DKXChienThang() Điều kiện O chiến thắng, điều kiền X chiến thắng)
+ Việc kiểm tra khá khó khăn vì quá trình nhập vào O, X là không có thứ tự cụ thể nên khi xét phải xét vị trí O gần X nhât (hoặc X gần O nhất) bằng cách:
(vd theo hàng ngang)

//Theo hang ngang
    m1
=m; n1=n;
   
while (a[n1][m]=='O')
        n1
++;
    n1
--;

...và theo hàng dọc, chéo
Phải dùng thêm 2 biến m1, n1 để xét được O gần X nhất
+ Quan trọng là ở 2 cái thủ tục đó thui, hì. Còn lại chủ yếu là trang trí.
- Ở đây mảng 2 chiều a[n][m] thực ra là không cần thiết...mục đích cho mảng vào là để lúc chiến thắng thì những mảng chứa O (hoặc X) sẽ nhấp nháy màu nhưng chưa kịp thực hiện

- Thao tác: có thể dùng phím mũi tên hoặc A,D,W,S để di chuyển (2 người@!) và E, M để viết ra O, X

TroChoiOX(CoCaro).rar

Nông Ngọc Hoai

unread,
Mar 12, 2013, 3:47:57 AM3/12/13
to b2tind4...@googlegroups.com
sửa lỗi chặn đầu chặn đuôi
thêm vào: hiển thị lượt O hay lượt  X, thêm hiển thị menu cho đẹp, ấn R để chơi lai, B để quay lại menu
Còn chế độ chơi với máy không làm được...hic 

TroChoi OX.rar
Reply all
Reply to author
Forward
0 new messages