Họ và tên
I.
BỘ MÔN KỸ THUẬT MÁY TÍNH – VIỄN THÔNG
THỰC TẬP HỆ THỐNG NHÚNG
MMH: ESPR427064
Tuần:
Ngày…27…….tháng…10……năm 2016
Phan Anh Toàn
13141373
Phan Thành Hưng
13141325
Cơ sở lý thuyết (nêu ngắn gọn)
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
II.
III.
Minh chứng kết quả bằng hình ảnh và nhận xét
Link video giới thiệu game CARO chạy trên WINCE:
/>v=pUjVBCklPUY
NHẬN XÉT: game chạy ổn định nhưng còn một số không tốt : kích thước
game chỉ 8x8, dễ hòa nhau, thiết kế chưa đẹp mắt…
Giải thích chương trình
1. code game caro:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace DeviceApplication3
{
public partial class Form1 : Form
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
bool flag = true; // biến phân biệt hiển thị “X” và “O”
int dem = 0;
// biến đếm để đếm số ô đã đánh // 8x8 ô
bool winner = false; // biến để kiểm tra có ai win chưa
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button_Click(object sender, EventArgs e)
{
Button b = (Button)sender; //lấy button đang được click
if (flag)
b.Text = "X"; // flag =true b.text là “X”
else
b.Text = "O";// flag =false b.text là “O”
flag = !flag; // đảo biến flag
b.Enabled = false;
dem++; // tăng biến dem lên 1
checkForWinner();
}
private void checkForWinner()
để xuất biến winner.
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
// kiểm tra xem có bên nào thắng chưa
{
winner = false;
// xét theo hang ngang khi từ a1 đến a8……h1 đến h8 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
if ((a1.Text == a2.Text && (a2.Text == a3.Text) && (a4.Text == a3.Text) &&
(a4.Text == a5.Text) && (a6.Text == "")) && (a1.Enabled == false))
winner = true;
else if ((a3.Text == a2.Text) && (a4.Text == a3.Text) && (a4.Text == a5.Text)
&& (a6.Text == a5.Text) && (a1.Text == "")| (a7.Text == "") && (!a2.Enabled))
winner = true;
else if ((a3.Text == a4.Text) && (a4.Text == a5.Text) && (a6.Text == a5.Text)
&& (a6.Text == a7.Text) && (a3.Text == "") | (a8.Text == "") && (!a3.Enabled))
winner = true;
else if ((a5.Text == a4.Text) && (a6.Text == a5.Text) && (a6.Text == a7.Text)
&& (a8.Text == a7.Text) && (a4.Text == "") && (!a4.Enabled))
winner = true;
else if ((b1.Text == b2.Text) && (b2.Text == b3.Text) && (b4.Text == b3.Text)
&& (b4.Text == b5.Text) && (b6.Text == "") && (!b1.Enabled))
winner = true;
else if ((b3.Text == b2.Text) && (b4.Text == b3.Text) && (b4.Text == b5.Text)
&& (b6.Text == b5.Text) && (b1.Text == "") | (b7.Text == "") && (!b2.Enabled))
winner = true;
else if ((b3.Text == b4.Text) && (b4.Text == b5.Text) && (b6.Text == b5.Text)
&& (b6.Text == b7.Text) && (b3.Text == "") | (b8.Text == "") && (!b3.Enabled))
winner = true;
else if ((b5.Text == b4.Text) && (b6.Text == b5.Text) && (b6.Text == b7.Text)
&& (b8.Text == b7.Text) && (b4.Text == "") && (!b4.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((c1.Text == c2.Text) && (c2.Text == c3.Text) && (c4.Text == c3.Text)
&& (c4.Text == c5.Text) && (c6.Text == "") && (!c1.Enabled))
winner = true;
else if ((c3.Text == c2.Text) && (c4.Text == c3.Text) && (c4.Text == c5.Text)
&& (c6.Text == c5.Text) && (c1.Text == "") | (c7.Text == "") && (!c2.Enabled))
winner = true;
else if ((c3.Text == c4.Text) && (c4.Text == c5.Text) && (c6.Text == c5.Text)
&& (c6.Text == c7.Text) && (c3.Text == "") | (c8.Text == "") && (!c3.Enabled))
winner = true;
else if ((c5.Text == c4.Text) && (c6.Text == c5.Text) && (c6.Text == c7.Text)
&& (c8.Text == c7.Text) && (c4.Text == "") && (!c4.Enabled))
winner = true;
else if ((d1.Text == d2.Text) && (d2.Text == d3.Text) && (d4.Text == d3.Text)
&& (d4.Text == d5.Text) && (d6.Text == "") && (!d1.Enabled))
winner = true;
else if ((d3.Text == d2.Text) && (d4.Text == d3.Text) && (d4.Text == d5.Text)
&& (d6.Text == d5.Text) && (d1.Text == "") | (d7.Text == "") && (!d2.Enabled))
winner = true;
else if ((d3.Text == d4.Text) && (d4.Text == d5.Text) && (d6.Text == d5.Text)
&& (d6.Text == d7.Text) && (d3.Text == "") | (d8.Text == "") && (!d3.Enabled))
winner = true;
else if ((d5.Text == d4.Text) && (d6.Text == d5.Text) && (d6.Text == d7.Text)
&& (d8.Text == d7.Text) && (d4.Text == "") && (!d4.Enabled))
winner = true;
else if ((e1.Text == e2.Text) && (e2.Text == e3.Text) && (e4.Text == e3.Text)
&& (e4.Text == e5.Text) && (e6.Text == "") && (!e1.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((e3.Text == e2.Text) && (e4.Text == e3.Text) && (e4.Text == e5.Text)
&& (e6.Text == e5.Text) && (e1.Text == "") | (e7.Text == "") && (!e2.Enabled))
winner = true;
else if ((e3.Text == e4.Text) && (e4.Text == e5.Text) && (e6.Text == e5.Text)
&& (e6.Text == e7.Text) && (e3.Text == "") | (e8.Text == "") && (!e3.Enabled))
winner = true;
else if ((e5.Text == e4.Text) && (e6.Text == e5.Text) && (e6.Text == e7.Text)
&& (e8.Text == e7.Text) && (e4.Text == "") && (!e4.Enabled))
winner = true;
else if ((f1.Text == f2.Text) && (f2.Text == f3.Text) && (f4.Text == f3.Text)
&& (f4.Text == f5.Text) && (f6.Text == "") && (!f1.Enabled))
winner = true;
else if ((f3.Text == f2.Text) && (f4.Text == f3.Text) && (f4.Text == f5.Text)
&& (f6.Text == f5.Text) && (f1.Text == "") | (f7.Text == "") && (!f2.Enabled))
winner = true;
else if ((f3.Text == f4.Text) && (f4.Text == f5.Text) && (f6.Text == f5.Text)
&& (f6.Text == f5.Text) && (f3.Text == "") | (f8.Text == "") && (!f3.Enabled))
winner = true;
else if ((f5.Text == f4.Text) && (f6.Text == f5.Text) && (f6.Text == f7.Text)
&& (f8.Text == f7.Text) && (f4.Text == "") && (!f4.Enabled))
winner = true;
else if ((g1.Text == g2.Text) && (g2.Text == g3.Text) && (g4.Text == g3.Text)
&& (g4.Text == g5.Text) && (g6.Text == "") && (!g1.Enabled))
winner = true;
else if ((g3.Text == g2.Text) && (g4.Text == g3.Text) && (g4.Text == g5.Text)
&& (g6.Text == g5.Text) && (g1.Text == "") | (g7.Text == "") && (!g2.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((g3.Text == g4.Text) && (g4.Text == g5.Text) && (g6.Text == g5.Text)
&& (g6.Text == g7.Text) && (g3.Text == "") | (g8.Text == "") && (!g3.Enabled))
winner = true;
else if ((g5.Text == g4.Text) && (g6.Text == g5.Text) && (g6.Text == g7.Text)
&& (g8.Text == g7.Text) && (g4.Text == "") && (!g4.Enabled))
winner = true;
else if ((h1.Text == h2.Text) && (h2.Text == h3.Text) && (h4.Text == h3.Text)
&& (h4.Text == h5.Text) && (h6.Text == "") && (!h1.Enabled))
winner = true;
else if ((h3.Text == h2.Text) && (h4.Text == h3.Text) && (h4.Text == h5.Text)
&& (h6.Text == h5.Text) && (h1.Text == "") | (h7.Text == "") && (!h2.Enabled))
winner = true;
else if ((h3.Text == h4.Text) && (h4.Text == h5.Text) && (h6.Text == h5.Text)
&& (h6.Text == h7.Text) && (h3.Text == "") | (h8.Text == "") && (!h3.Enabled))
winner = true;
else if ((h5.Text == h4.Text) && (h6.Text == h5.Text) && (h6.Text == h7.Text)
&& (h8.Text == h7.Text) && (h4.Text == "") && (!h4.Enabled))
winner = true;
// xét theo cọt khi từ a1 đến h1……a8 đến h8 có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a1.Text == b1.Text) && (b1.Text == c1.Text) && (c1.Text == d1.Text)
&& (d1.Text == e1.Text) && (f1.Text == "") && (!a1.Enabled))
winner = true;
else if ((a2.Text == b2.Text) && (b2.Text == c2.Text) && (c2.Text == d2.Text)
&& (d2.Text == e2.Text) && (f2.Text == "") && (!a2.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((a3.Text == b3.Text) && (b3.Text == c3.Text) && (c3.Text == d3.Text)
&& (d3.Text == e3.Text) && (f3.Text == "") && (!a3.Enabled))
winner = true;
else if ((a4.Text == b4.Text) && (b4.Text == c4.Text) && (c4.Text == d4.Text)
&& (d4.Text == e4.Text) && (f4.Text == "") && (!a4.Enabled))
winner = true;
else if ((a5.Text == b5.Text) && (b5.Text == c5.Text) && (c5.Text == d5.Text)
&& (d5.Text == e5.Text) && (f5.Text == "") && (!a5.Enabled))
winner = true;
else if ((a6.Text == b6.Text) && (b6.Text == c6.Text) && (c6.Text == d6.Text)
&& (d6.Text == e6.Text) && (f6.Text == "") && (!a6.Enabled))
winner = true;
else if ((a7.Text == b7.Text) && (b7.Text == c7.Text) && (c7.Text == d7.Text)
&& (d7.Text == e7.Text) && (f7.Text == "") && (!a7.Enabled))
winner = true;
else if ((a8.Text == b8.Text) && (b8.Text == c8.Text) && (c8.Text == d8.Text)
&& (d8.Text == e8.Text) && (f8.Text == "") && (!a8.Enabled))
winner = true;
else if ((c1.Text == b1.Text) && (d1.Text == c1.Text) && (e1.Text == d1.Text)
&& (f1.Text == e1.Text) && (a1.Text == "") | (g1.Text == "") && (!b1.Enabled))
winner = true;
else if ((c2.Text == b2.Text) && (d2.Text == c2.Text) && (e2.Text == d2.Text)
&& (f2.Text == e2.Text) && (a2.Text == "") | (g2.Text == "") && (!b2.Enabled))
winner = true;
else if ((c3.Text == b3.Text) && (d3.Text == c3.Text) && (e3.Text == d3.Text)
&& (f3.Text == e3.Text) && (a3.Text == "") | (g3.Text == "") && (!b3.Enabled))
winner = true;
else if ((c4.Text == b4.Text) && (d4.Text == c4.Text) && (e4.Text == d4.Text)
&& (f4.Text == e4.Text) && (a4.Text == "") | (g4.Text == "") && (!b4.Enabled))
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
winner = true;
else if ((c5.Text == b5.Text) && (d5.Text == c5.Text) && (e5.Text == d5.Text)
&& (f5.Text == e5.Text) && (a5.Text == "") | (g5.Text == "") && (!b5.Enabled))
winner = true;
else if ((c6.Text == b6.Text) && (d6.Text == c6.Text) && (e6.Text == d6.Text)
&& (f6.Text == e6.Text)&& (a6.Text == "") | (g6.Text == "") && (!b6.Enabled))
winner = true;
else if ((c7.Text == b7.Text) && (d7.Text == c7.Text) && (e7.Text == d7.Text)
&& (f7.Text == e7.Text) && (a7.Text == "") | (g7.Text == "") && (!b7.Enabled))
winner = true;
else if ((c8.Text == b8.Text) && (d8.Text == c8.Text) && (e8.Text == d8.Text)
&& (f8.Text == e8.Text) && (a8.Text == "") | (g8.Text == "") && (!b8.Enabled))
winner = true;
else if ((c1.Text == d1.Text) && (d1.Text == e1.Text) && (e1.Text == f1.Text)
&& (f1.Text == g1.Text) && (b1.Text == "") | (h1.Text == "") && (!c1.Enabled))
winner = true;
else if ((c2.Text == d2.Text) && (d2.Text == e2.Text) && (e2.Text == f2.Text)
&& (f2.Text == g2.Text) && (b2.Text == "") | (h2.Text == "") && (!c2.Enabled))
winner = true;
else if ((c3.Text == d3.Text) && (d3.Text == e3.Text) && (e3.Text == f3.Text)
&& (f3.Text == g3.Text) && (b3.Text == "") | (h3.Text == "") && (!c3.Enabled))
winner = true;
else if ((c4.Text == d4.Text) && (d4.Text == e4.Text) && (e4.Text == f4.Text)
&& (f4.Text == g4.Text) && (b4.Text == "") | (h4.Text == "") && (!c4.Enabled))
winner = true;
else if ((c5.Text == d5.Text) && (d5.Text == e5.Text) && (e5.Text == f5.Text)
&& (f5.Text == g5.Text) && (b5.Text == "") | (h5.Text == "") && (!c5.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((c6.Text == d6.Text) && (d6.Text == e6.Text) && (e6.Text == f6.Text)
&& (f6.Text == g6.Text) && (b6.Text == "") | (h6.Text == "") && (!c6.Enabled))
winner = true;
else if ((c7.Text == d7.Text) && (d7.Text == e7.Text) && (e7.Text == f7.Text)
&& (f7.Text == g7.Text) && (b7.Text == "") | (h7.Text == "") && (!c7.Enabled))
winner = true;
else if ((c8.Text == d8.Text) && (d8.Text == e8.Text) && (e8.Text == f8.Text)
&& (f8.Text == g8.Text) && (b8.Text == "") | (h8.Text == "") && (!c8.Enabled))
winner = true;
else if ((e1.Text == d1.Text) && (f1.Text == e1.Text) && (g1.Text == f1.Text)
&& (h1.Text == g1.Text) && (c1.Text == "") && (!d1.Enabled))
winner = true;
else if ((e2.Text == d2.Text) && (f2.Text == e2.Text) && (g2.Text == f2.Text)
&& (h2.Text == g2.Text) && (c2.Text == "") && (!d2.Enabled))
winner = true;
else if ((e3.Text == d3.Text) && (f3.Text == e3.Text) && (g3.Text == f3.Text)
&& (h3.Text == g3.Text) && (c3.Text == "") && (!d3.Enabled))
winner = true;
else if ((e4.Text == d4.Text) && (f4.Text == e4.Text) && (g4.Text == f4.Text)
&& (h4.Text == g4.Text) && (c4.Text == "") && (!d4.Enabled))
winner = true;
else if ((e5.Text == d5.Text) && (f5.Text == e5.Text) && (g5.Text == f5.Text)
&& (h5.Text == g5.Text) && (c5.Text == "") && (!d5.Enabled))
winner = true;
else if ((e6.Text == d6.Text) && (f6.Text == e6.Text) && (g6.Text == f6.Text)
&& (h6.Text == g6.Text) && (c6.Text == "") && (!d6.Enabled))
winner = true;
else if ((e7.Text == d7.Text) && (f7.Text == e7.Text) && (g7.Text == f7.Text)
&& (h7.Text == g7.Text) && (c7.Text == "") && (!d7.Enabled))
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
winner = true;
else if ((e8.Text == d8.Text) && (f8.Text == e8.Text) && (g8.Text == f8.Text)
&& (h8.Text == g8.Text) && (c8.Text == "") && (!d8.Enabled))
winner = true;
// xét theo hàng chéo chính khi từ a1,b2,c3,d4,e5,f6,g7,h8 có 5 giá trị liên tiếp
bằng nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a1.Text == b2.Text) && (b2.Text == c3.Text) && (d4.Text == c3.Text)
&& (d4.Text == e5.Text) && (f6.Text == "") && (!a1.Enabled))
winner = true;
else if ((c3.Text == b2.Text) && (d4.Text == c3.Text) && (d4.Text == e5.Text)
&& (f6.Text == e5.Text) && (g7.Text == "") | (a1.Text == "") && (!b2.Enabled))
winner = true;
else if ((c3.Text == d4.Text) && (d4.Text == e5.Text) && (f6.Text == e5.Text)
&& (f6.Text == g7.Text) && (h8.Text == "") | (b2.Text == "") && (!c3.Enabled))
winner = true;
else if ((e5.Text == d4.Text) && (f6.Text == e5.Text) && (f6.Text == g7.Text)
&& (h8.Text == g7.Text) && (c3.Text == "") && (!d4.Enabled))
winner = true;
// xét theo hàng chéo phụ khi từ a8,b7,c6,d5,e4,f3,g2,h1 có 5 giá trị liên tiếp
bằng nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a8.Text == b7.Text) && (b7.Text == c6.Text) && (d5.Text == c6.Text)
&& (d5.Text == e4.Text) && (f3.Text == "") && (!a8.Enabled))
winner = true;
else if ((c6.Text == b7.Text) && (d5.Text == c6.Text) && (d5.Text == e4.Text)
&& (f3.Text == e4.Text) && (g2.Text == "")|(a8.Text == "") && (!b7.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((c6.Text == d5.Text) && (d5.Text == e4.Text) && (f3.Text == e4.Text)
&& (f3.Text == g2.Text) && (h1.Text == "") | (b2.Text == "") && (!c6.Enabled))
winner = true;
else if ((e4.Text == d5.Text) && (f3.Text == e4.Text) && (f3.Text == g2.Text)
&& (h1.Text == g2.Text) && (c6.Text == "") && (!d5.Enabled))
winner = true;
// xét theo hàng chéo khi từ a2,b3,c4,d5,e6,f7,g8 có 5 giá trị liên tiếp bằng nhau
và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a2.Text == b3.Text) && (b3.Text == c4.Text) && (d5.Text == c4.Text)
&& (d5.Text == e6.Text) && (f7.Text == "") && (!a2.Enabled))
winner = true;
else if ((c4.Text == b3.Text) && (d5.Text == c4.Text) && (d5.Text == e6.Text)
&& (f7.Text == e6.Text) && (g8.Text == "")|(a2.Text == "")&& (!b3.Enabled))
winner = true;
else if ((c4.Text == d5.Text) && (d5.Text == e6.Text) && (f7.Text == e6.Text)
&& (f7.Text == g8.Text) && (b3.Text == "") && (!c4.Enabled))
winner = true;
// xét theo hàng chéo khi từ a3,b4,c5,d6,e7,f8 có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a3.Text == b4.Text) && (b4.Text == c5.Text) && (d6.Text == c5.Text)
&& (d6.Text == e7.Text) && (f8.Text == "") && (!a3.Enabled))
winner = true;
else if ((c5.Text == b4.Text) && (d6.Text == c5.Text) && (d6.Text == e7.Text)
&& (f8.Text == e7.Text) && (a3.Text == "") && (!b4.Enabled))
winner = true;
// // xét theo hàng chéo khi từ a4,b5,c6,d7,e8có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((a4.Text == b5.Text) && (b5.Text == c6.Text) && (c6.Text == d7.Text)
&& (d7.Text == e8.Text) && (!a4.Enabled))
winner = true;
/// xét theo hàng chéo khi từ b1,c2,d3,e4,f5,g6,h7 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((b1.Text == c2.Text) && (c2.Text == d3.Text) && (d3.Text == e4.Text)
&& (e4.Text == f5.Text) && (g6.Text == "") && (!c2.Enabled))
winner = true;
else if ((c2.Text == d3.Text) && (d3.Text == e4.Text) && (e4.Text == f5.Text)
&& (f5.Text == g6.Text) && (h7.Text == "")|(b1.Text == "") && (!d3.Enabled))
winner = true;
else if ((d3.Text == e4.Text) && (e4.Text == f5.Text) && (f5.Text == g6.Text)
&& (g6.Text == h7.Text) && (c2.Text == "") && (!e4.Enabled))
winner = true;
// xét theo hàng chéo khi từ c1,d2,e3,f4,g5,h6 có 5 giá trị liên tiếp bằng nhau
và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((c1.Text == d2.Text) && (d2.Text == e3.Text) && (e3.Text == f4.Text)
&& (f4.Text == g5.Text) && (h6.Text == "") && (!c1.Enabled))
winner = true;
else if ((d2.Text == e3.Text) && (e3.Text == f4.Text) && (f4.Text == g5.Text)
&& (g5.Text == h6.Text) && (c1.Text == "") && (!d2.Enabled))
winner = true;
// xét theo hàng chéo khi từ d1,e2,f3,g4,h5 có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((d1.Text == e2.Text) && (e2.Text == f3.Text) && (f3.Text == g4.Text)
&& (g4.Text == h5.Text) && (!g4.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
// xét theo hàng chéo khi từ a7,b6,c5,d4,e3,f2,g1 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a7.Text == b6.Text) && (b6.Text == c5.Text) && (d4.Text == c5.Text)
&& (d4.Text == e3.Text) && (f2.Text == "") && (!a7.Enabled))
winner = true;
else if ((c5.Text == b6.Text) && (d4.Text == c5.Text) && (d4.Text == e3.Text)
&& (f2.Text == e3.Text) && (a7.Text == "") | (g1.Text == "") && (!b6.Enabled))
winner = true;
else if ((c5.Text == d4.Text) && (d4.Text == e3.Text) && (f2.Text == e3.Text)
&& (f2.Text == g1.Text) && (b6.Text == "") && (!c5.Enabled))
winner = true;
// xét theo hàng chéo khi từ a6,b5,c4,d3,e2,f1 có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a6.Text == b5.Text) && (b5.Text == c4.Text) && (d3.Text == c4.Text)
&& (d3.Text == e2.Text) && (f1.Text == "") && (!a6.Enabled))
winner = true;
else if ((c4.Text == b5.Text) && (d3.Text == c4.Text) && (d3.Text == e2.Text)
&& (f1.Text == e3.Text) && (!b5.Enabled))
winner = true;
// xét theo hàng chéo khi từ a5,b4,c3,d2,e1 có 5 giá trị liên tiếp bằng nhau và
không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((a5.Text == b4.Text) && (b4.Text == c3.Text) && (c3.Text == d2.Text)
&& (d2.Text == e1.Text) && (!a5.Enabled))//
winner = true;
// xét theo hàng chéo khi từ b8,c7,d6,e5,f4,g3,h2 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((b8.Text == c7.Text) && (c7.Text == d6.Text) && (d6.Text == e5.Text)
&& (e5.Text == f4.Text) && (g3.Text == "") && (!c7.Enabled))
winner = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
else if ((c7.Text == d6.Text) && (d6.Text == e5.Text) && (e5.Text == f4.Text)
&& (f4.Text == g3.Text) && (h2.Text == "") | (b8.Text == "") && (!d6.Enabled))
winner = true;
else if ((d6.Text == e5.Text) && (e5.Text == f4.Text) && (f4.Text == g3.Text)
&& (g3.Text == h2.Text) && (c7.Text == "") && (!e5.Enabled))
winner = true;
// xét theo hàng chéo khi từ c8,d7,e6,f5,g4,h3 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((c8.Text == d7.Text) && (d7.Text == e6.Text) && (e6.Text == f5.Text)
&& (f5.Text == g4.Text) && (h3.Text == "") && (!c8.Enabled))
winner = true;
else if ((d7.Text == e6.Text) && (e6.Text == f5.Text) && (f5.Text == g4.Text)
&& (g4.Text == h3.Text) && (!d7.Enabled))
winner = true;
// xét theo hàng chéo khi từ d8,e7,f6,g5,h4 có 5 giá trị liên tiếp bằng
nhau và không bị chặn 2 đầu hoặc 1 đầu bị chặn và 1 đầu không còn đường đi.
else if ((d8.Text == e7.Text) && (e7.Text == f6.Text) && (f6.Text == g5.Text)
&& (g5.Text == h4.Text) && (!g5.Enabled))
winner = true;
if (winner) // kiểm tra biên winner
{
//disableButtons();
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
if (flag)
MessageBox.Show( " X THUA NHE!"); // khi winner =1 và khi flag = true
thì lúc này “O” win .
else
MessageBox.Show("O THUA NHE! ");/ khi winner =1 và khi flag = false thì
lúc này “X” win .
winner = false; // trả biến winner về false
}
else
{
if (dem == 64) // khi dem= 64 là 2 bên đã đánh hết tất cả các ô thì sẽ hòa.và
reset biến dem
{
MessageBox.Show("2 BÊN HÒA ");
flag = true;
dem = 0;
try
{
foreach (Control c in Controls)
{
Button b = (Button)c;
b.Enabled = true;
b.Text = "";
}
}
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
catch { }
}
}
}//end checkFor
private void disableButtons()
{
try
{
foreach (Control c in Controls)
{
Button b = (Button)c;
b.Enabled = false;
}
}//end try
catch { }
}
private void button1_Click(object sender, EventArgs e) // click vào button xuất hiện
thông báo “welcome”. cho các ô text trống.
{
MessageBox.Show("welcome");
flag = true;
dem = 0;
winner = false;
// flag =true cho x đánh trước
// reset biến dem
// không có người thắng
a1.Enabled = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
a1.Text = "";
a2.Enabled = true;
a2.Text = "";
a3.Enabled = true;
a3.Text = "";
a4.Enabled = true;
a4.Text = "";
a5.Enabled = true;
a5.Text = "";
a6.Enabled = true;
a6.Text = "";
a7.Enabled = true;
a7.Text = "";
a8.Enabled = true;
a8.Text = "";
b1.Enabled = true;
b1.Text = "";
b2.Enabled = true;
b2.Text = "";
b3.Enabled = true;
b3.Text = "";
b4.Enabled = true;
b4.Text = "";
b5.Enabled = true;
b5.Text = "";
b6.Enabled = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
b6.Text = "";
b7.Enabled = true;
b7.Text = "";
b8.Enabled = true;
b8.Text = "";
c1.Enabled = true;
c1.Text = "";
c2.Enabled = true;
c2.Text = "";
c3.Enabled = true;
c3.Text = "";
c4.Enabled = true;
c4.Text = "";
c5.Enabled = true;
c5.Text = "";
c6.Enabled = true;
c6.Text = "";
c7.Enabled = true;
c7.Text = "";
c8.Enabled = true;
c8.Text = "";
d1.Enabled = true;
d1.Text = "";
d2.Enabled = true;
d2.Text = "";
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
d3.Enabled = true;
d3.Text = "";
d4.Enabled = true;
d4.Text = "";
d5.Enabled = true;
d5.Text = "";
d6.Enabled = true;
d6.Text = "";
d7.Enabled = true;
d7.Text = "";
d8.Enabled = true;
d8.Text = "";
e1.Enabled = true;
e1.Text = "";
e2.Enabled = true;
e2.Text = "";
e3.Enabled = true;
e3.Text = "";
e4.Enabled = true;
e4.Text = "";
e5.Enabled = true;
e5.Text = "";
e6.Enabled = true;
e6.Text = "";
e7.Enabled = true;
e7.Text = "";
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
e8.Enabled = true;
e8.Text = "";
f1.Enabled = true;
f1.Text = "";
f2.Enabled = true;
f2.Text = "";
f3.Enabled = true;
f3.Text = "";
f4.Enabled = true;
f4.Text = "";
f5.Enabled = true;
f5.Text = "";
f6.Enabled = true;
f6.Text = "";
f7.Enabled = true;
f7.Text = "";
f8.Enabled = true;
f8.Text = "";
g1.Enabled = true;
g1.Text = "";
g2.Enabled = true;
g2.Text = "";
g3.Enabled = true;
g3.Text = "";
g4.Enabled = true;
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
g4.Text = "";
g5.Enabled = true;
g5.Text = "";
g6.Enabled = true;
g6.Text = "";
g7.Enabled = true;
g7.Text = "";
g8.Enabled = true;
g8.Text = "";
h1.Enabled = true;
h1.Text = "";
h2.Enabled = true;
h2.Text = "";
h3.Enabled = true;
h3.Text = "";
h4.Enabled = true;
h4.Text = "";
h5.Enabled = true;
h5.Text = "";
h6.Enabled = true;
h6.Text = "";
h7.Enabled = true;
h7.Text = "";
h8.Enabled = true;
h8.Text = "";
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064
}
}
}
THỰC TẬP HỆ THỐNG NHÚNG - ESPR427064