Với việc mô tả dữ liệu thông qua các hình ảnh và màu sắc đa dạng của nó, các chương trình đồ họa thường thu hút người sử dụng bởi tính thân thiện, dễ dùng,.... Các kỹ thuật đồ họa Dựa
Trang 1
LỜI NÓI ĐẦU
Xã hội ngày càng phát triển thì đời sống con người ngày càng được
cải thiện, nhu cầu về vui chơi giải trí của con người ngày càng được nâng
cao Những trò chơi được thiết kế bằng máy tính ra đời và đang trên đà phát
triển để đáp ứng những nhu cầu đòi hỏi đó của con người
Vì lý do đó em chọn đề tài “Xây dựng chương trình game sử dụng
ngôn ngữ C” Mục tiêu của đề tài là tìm hiểu một số đặc điểm cơ bản của
đồ họa và tính chất của game để xây dựng một số trò chơi (game) đơn giản
bằng ngôn ngữ C
Khóa luận gồm có 3 chương:
Chương 1.Các yếu tố cơ sở của đồ họa
Chương 2.Tìm hiểu về game và các tính chất của game
Chưong 3 Xây dựng chương trình game bằng ngôn ngữ C
Trong quá trình thực hiện đề tài, em đã được sự chỉ bảo nhiệt tình của các
thầy cô giáo trong khoa CNTT Nhân dịp này cho phép em được gửi lời cảm
ơn chân thành tới các thầy cô giáo, nhất là cô giáo, tiến sỹ Phan Lê Na đã
hướng dẫn, chỉ bảo tận tình cho em trong suốt thời gian qua
Vinh, tháng 5/2010
Lê Thị Phúc
Trang 2Xây dựng chương trình Game sử dụng ngôn ngữ C
MỤC LỤC
Lời nói đầu 1
CHƯƠNG 1 CÁC YẾU TỐ CƠ SỞ CỦA ĐỒ HỌA 4
1 Tổng quan về đồ họa máy tính 4
1.1 Giới thiệu về đồ họa máy tính 4
1.2 Các kỹ thuật đồ họa 4
1.3 Ứng dụng của đồ họa máy tính 5
1.4 Các lĩnh vực của đồ họa máy tính 7
1.5 Tổng quan về một hệ đồ họa 8
2 Màn hình đồ họa 10
CHƯƠNG 2 TÌM HIỂU VỀ GAME VÀ CÁC TÍNH CHẤT CỦA GAME 11
1 Nguồn gốc ra đời và ứng dụng 11
2 Ưu điểm của game và các vấn đề đặt ra 13
2.1 Ưu điểm 13
2.2 Các vấn đề đặt ra 17
CHƯƠNG 3 XÂY DỰNG GAME BẰNG NGÔN NGỮ C 19
1 Giao diện menu chính 19
2 Các trò chơi 20
2.1 Trò chơi cờ caro 20
2.2 Trò chơi xếp số 25
2.3 Trò chơi đuổi bắt 29
2.4 Trò chơi hứng quả 34
2.5 Trò chơi bắn súng 38
Trang 3Kết luận 44 Tài liệu tham khảo 46
Trang 4Xây dựng chương trình Game sử dụng ngôn ngữ C
CHƯƠNG 1 CÁC YẾU TỐ CƠ SỞ CỦA ĐỒ HỌA
1 Tổng quan về đồ họa máy tính
Đồ họa máy tính là một lĩnh vực phát triển nhanh nhất trong Tin học
Nó được áp dụng rộng rãi trong nhiều lĩnh vực khác nhau thuộc về khoa học,
kỹ nghệ, y khoa, kiến trúc và giải trí
Thuật ngữ đồ họa máy tính (Computer Graphics) được đề xuất bởi nhà
khoa học người Mỹ tên là William Fetter vào năm 1960 khi ông đang nghiên
cứu xây dựng mô hình buồng lái máy bay cho hãng Boeing
Các chương trình đồ họa ứng dụng cho phép chúng ta làm việc với máy tính
một cách thoải mái, tự nhiên
1.1 Giới thiệu về đồ họa máy tính
Đồ họa máy tính là một ngành khoa học Tin học chuyên nghiên cứu
về các phương pháp và kỹ thuật để có thể mô tả và thao tác trên các đối
tượng của thế giới thực bằng máy tính
Về bản chất: đó là một quá trình xây dựng và phát triển các công cụ trên cả
hai lĩnh vực phần cứng và phần mềm hổ trợ cho các lập trình viên thiết kế
các chương trình có khả năng đồ họa cao
Với việc mô tả dữ liệu thông qua các hình ảnh và màu sắc đa dạng của nó,
các chương trình đồ họa thường thu hút người sử dụng bởi tính thân thiện,
dễ dùng, kích thích khả năng sáng tạo và nâng cao năng suất làm việc
1.2 Các kỹ thuật đồ họa
Dựa vào các phương pháp xử lý dữ liệu trong hệ thống, người ta phân
ra làm hai kỹ thuật đồ họa:
+ Kỹ thuật đồ họa điểm
Nguyên lý của kỹ thuật này như sau: các hình ảnh được hiển thị thông
qua từng pixel (từng mẫu rời rạc) Với kỹ thuật này, chúng ta có thể tạo ra,
Trang 5xóa hoặc thay đổi thuộc tính của từng pixel của các đối tượng Các hình ảnh
được hiển thị như một lưới điểm rời rạc (grid), từng điểm đều có vị trí xác
định được hiển thị với một giá trị nguyên biểu thị màu sắc hoặc dộ sáng của
điểm đó Tập hợp tất cả các pixel của grid tạo nên hình ảnh của đối tượng
mà ta muốn biểu diễn
+ Kỹ thuật đồ họa vector
Nguyên lý của kỹ thuật này là xây dựng mô hình hình học
(geometrical model) cho hình ảnh đối tượng, xác định các thuộc tính của mô
hình hình học, sau đó dựa trên mô hình này để thực hiện quá trình tô trát
(rendering) để hiển thị từng điểm của mô hình, hình ảnh của đối tượng
Ở kỹ thuật này, chúng ta chỉ lưu trữ mô hình toán học của các thành phần
trong mô hình hình học cùng với các thuộc tính tương ứng mà không cần lưu
lại toàn bộ tất cả các pixel của hình ảnh đối tượng
1.3.Ứng dụng của đồ họa máy tính hiện nay
Ngày nay, đồ họa máy tính được sử dụng rộng rãi trong nhiều lĩnh vực
khác nhau như: Công nghiệp, thương mại, quản lý, giáo dục, giải trí, Sau
đây là một số ứng dụng tiêu biểu:
+Tạo giao diện:
Các chương trình ứng dụng WINDOWS, WINWORD, EXCEL đang
được đa số người sử dụng ưa chuộng nhờ giao diện có tính thân thiện, dể sử
dụng
Trang 6Xây dựng chương trình Game sử dụng ngôn ngữ C
Giao diện chương trình Exel
+ Tạo ra các biểu đồ dùng trong thương mại, khoa học và kỹ thuật:
Các biểu đồ được tạo ra rất đa dạng, phong phú bao gồm cả hai chiều lẫn ba
chiều góp phần thúc đẩy xu hướng phát triển các mô hình dữ liệu hổ trợ đắc
lực cho việc phân tích thông tin và trợ giúp ra quyết định
+ Tự động hóa văn phòng và chế bản điện tử:
Dùng những ứng dụng của đồ họa để in ấn các tài liệu với nhiều loại dữ liệu
khác nhau như: văn bản, biểu đồ, đồ thị và nhiều loại hình ảnh khác
+ Thiết kế với sự trợ giúp của máy tính:
Một trong những lợi ích lớn nhất của máy tính là trợ giúp con người trong
việc thiết kế Các ứng dụng đồ họa cho phép chúng ta thiết kế các thiết bị cơ
khí, điện, điện tử, ô tô, máy bay, như phần mềm AUTOCAD
+ Lĩnh vực giải trí, nghệ thuật:
Cho phép các họa sĩ tạo ra các hình ảnh ngay trên màn hình của máy tính
Người họa sĩ có thể tự pha màu, trộn màu, thực hiện một số thao tác: cắt,
dán, tẩy, xóa, phóng to, thu nhỏ như các phần mềm PAINTBRUSH,
CORELDRAW,
Trang 7+ Lĩnh vực bản đồ:
Xây dựng và in ấn các bản đồ địa lý Một trong những ứng dụng hiện nay
của đồ họa là hệ thống thông tin địa lý (GIS - Geographical Information
System)
1.4 Các lĩnh vực của đồ họa máy tính
+ Các hệ CAD/CAM (CAD – Computer Aided Design, CAM – Computer
Aided Manufacture)
Các hệ này xây dựng tập hợp các công cụ đồ họa trợ giúp cho việc thiết kế
các chi tiết và các hệ thống khác nhau: các thiết bị cơ khí, điện tử Chẳng
hạn như phần mềm Auto Cad của hảng AutoDesk
+ Xử lý ảnh (Image Processing)
Đây là lĩnh vực xử lý các dữ liệu ảnh trong cuộc sống Sau quá trình xử lý
ảnh, dữ liệu đầu ra là ảnh của đối tượng Trong quá trình xử lý ảnh, chúng ta
sẽ sử dụng rất nhiều các kỹ thuật phức tạp: khôi phục ảnh, xác định biên
Ví dụ: phần mềm PhotoShop, Corel Draw,
+ Khoa học nhận dạng (Pattern Recognition)
Nhận dạng là một lĩnh vực trong kỹ thuật xử lý ảnh Từ những mẫu ảnh có
sẵn, ta phân loại theo cấu trúc hoặc theo các phương pháp xác định nào đó
và bằng các thuật toán chọn lọc để có thể phân tích hay tổng hợp ảnh đã cho
thành một tập hợp các ảnh gốc, các ảnh gốc này được lưu trong một thư viện
và căn cứ vào thư viện này để nhận dạng các ảnh khác
Ví dụ: Phần mềm nhận dạng chữ viết (VnDOCR) của viện Công nghệ
Thông tin Hà Nội, nhận dạng vân tay, nhận dạng mặt người trong khoa học
hình sự
+ Đồ họa minh họa(Presentation Graphics): Đây là lĩnh vực đồ họa bao
gồm các công cụ trợ giúp cho việc hiển thị các số liệu thống kê một cách
Trang 8Xây dựng chương trình Game sử dụng ngôn ngữ C
trực quan thông qua các mẫu đồ thị hoặc biểu đồ có sẵn Chẳng hạn như các
biểu đồ (Chart) trong các phần mềm Word, Excel
Biểu đồ dạng cột trong Word
+ Hoạt hình và nghệ thuật
Lĩnh vực đồ họa này bao gồm các công cụ giúp cho các họa sĩ, các nhà thiết
kế phim ảnh chuyên nghiệp thực hiện các công việc của mình thông qua các
kỹ xảo vẽ tranh, hoạt hình hoặc các kỹ xảo điện ảnh khác
Ví dụ: Phần mềm xử lý các kỹ xảo hoạt hình như: 3D Animation, 3D Studio
Max , phần mềm xử lý các kỹ xảo điện ảnh: Adobe Primiere, Cool 3D,
1.5 Tổng quan về một hệ đồ họa (Graphics System)
Các thành phần của hệ thống đồ họa :
+ Phần mềm đồ họa: Là tập hợp các câu lệnh đồ họa của hệ thống Các câu
lệnh lập trình dùng cho các thao tác đồ họa không được các ngôn ngữ lập
trình thông dụng như PASCAL, C, hổ trợ Thông thường, nó chỉ cung cấp
như là một tập công cụ thêm vào trong ngôn ngữ Tập các công cụ này dùng
để tạo ra các thành phần cơ sở của một hình ảnh đồ họa như: Điểm, đoạn
Trang 9thẳng, đường tròn, màu sắc, Qua đó, các nhà lập trình phải tạo ra các
chương trình đồ họa có khả năng ứng dụng cao hơn
+ Phần cứng đồ họa: Là các thiết bị điện tử: CPU, Card, màn hình, chuột,
phím giúp cho việc thực hiện và phát triển các phần mềm đồ họa
Các công cụ của một hệ thống đồ họa
Tập hợp các công cụ này được phân loại dựa trên những công việc trong
từng hoàn cảnh cụ thể: xuất, nhập, biến đổi ảnh, bao gồm:
+ Tập công cụ tạo ra ảnh gốc (output primitives):
cung cấp các công cụ cơ bản nhất cho việc xây dựng các hình ảnh Các ảnh
gốc bao gồm các chuỗi ký tự, các thực thể hình học như điểm, đường thẳng,
đa giác, đường tròn,
+ Tập các công cụ thay đổi thuộc tính (attributes):
dùng để thay đổi thuộc tính của các ảnh gốc Các thuộc tính của ảnh gốc bao
gồm màu sắc (color), kiểu đường thẳng (line style), kiểu văn bản (text style),
mẫu tô vùng (area filling pattern),
+ Tập các công cụ thay đổi hệ quan sát (viewing transformation):
Một khi mà các ảnh gốc và các thuộc tính của nó được xác định trong hệ tọa
độ thực, ta cần phải chiếu phần quan sát của ảnh sang một thiết bị xuất cụ
thể Các công cụ này cho phép định nghĩa các vùng quan sát trên hệ tọa độ
thực để hiển thị hình ảnh đó
+ Tập các công cụ phục vụ cho các thao tác nhập dữ liệu (input
operations):
Các ứng dụng đồ họa có thể sử dụng nhiều loại thiết bị nhập khác nhau như
bút vẽ, bảng, chuột, Chính vì vậy, cần xây dựng thêm các công cụ này để
điều khiển và xử lý các dữ liệu nhập sao cho có hiệu quả
Trang 10Xây dựng chương trình Game sử dụng ngôn ngữ C
2 Màn hình đồ họa
Mỗi máy tính đều có một CARD dùng để quản lý màn hình, gọi là Video
Adapter hay Graphics Adapter Có nhiều loại adapter như: CGA, MCGA,
EGA, VGA, Hercules Các adapter có thể làm việc ở hai chế độ: văn bản
(Text Mode) và đồ họa (Graphics Mode)
Có nhiều cách để khởi tạo các mode đồ họa Ta có thể sử dụng hàm $00 ngắt
$10 của BIOS với các Mode sau:
Mode $12: chế độ phân giải 640x480x16
Mode $13: chế độ phân giải 320x200x256
Trang 11CHƯƠNG 2 TÌM HIỂU VỀ GAME VÀ CÁC TÍNH CHẤT
CỦA GAME
1 Nguồn gốc ra đời và ứng dụng
Game được biết đến xuất phát từ nhu cầu giải trí, là một dạng phát triển
mới dựa trên các trò chơi, các bộ phim, các tác phẩm văn học và được lấy ý
tưởng từ cuộc sống thường ngày
Ngày nay, game đã trở thành một phương tiện truyền thông quảng bá, với số
lượng người tham gia rất lớn lên đến hàng trăm triệu người trên khắp thế
giới Game có thể quảng bá nền văn hoá cho các quốc gia, đưa vào những
mẩu quảng cáo cho các công ty phát hành và xây dựng game đó Ngoài ra,
bây giờ game có thể phục vụ ứng dụng cho các ngành nghề của xã hội, từ
ngành y tế, giáo dục hay an ninh quốc phòng… Trong vấn đề giảng dạy
ngành an ninh quốc phòng, học viên có thể có những trò chơi được trang bị
những kiến thức cần thiết cho các quân nhân cũng như các chiến sỹ Ví dụ
những trò chơi có mô hình đồi núi của Việt Nam, các tác chiến khẩu lệnh, bố
cục trận địa, cũng như cách sử dụng những loại trang thiết bị vũ khí cũng
như tên gọi của chúng Vừa mang tính trò chơi vừa mang tính học tập, đây là
hình thức học tập cho các quân nhân có hiệu quả nhất Hiện nay tại các quốc
gia quân sự mạnh như Mỹ, Nhật, Nga hay Trung Quốc đều đã áp dụng
những hình thức huấn luyện này trong việc tuyển quân cũng như đào tạo học
viên quân sự của họ Cũng tương tự như vậy, trong ngành giáo dục và y tế
đều có thể ứng dụng phát triển những trò chơi để tăng cường hiểu biết cũng
như trau dồi kiến thức về y tế, và giáo dục qua hình thức chơi game
Trang 12Xây dựng chương trình Game sử dụng ngôn ngữ C
Ví dụ về Game ứng dụng dạy học tiếng Anh
Game hiện nay đã trở nên phổ biến chẳng khác nào truyền hình Game
là một phương tiện quảng bá truyền thông vô cùng mạnh mẽ, kết hợp trong
đó là những kiến thức nền văn hoá, là hình thức để người dân tiếp xúc với
các tiến bộ khoa học kỹ thuật, có cái nhìn mới tầm hiều biết mới phù hợp với
thời đại hiện nay Ngoài ra game còn là hình thức giải trí để mọi người có
thể thư giãn giao lưu kết bạn xây dựng những khối cộng đồng bạn bè trong
Trang 13game cũng như ngoài đời Khi mà mọi sân chơi ngày càng ít nhất là trong
các thành phố lớn không có đủ sân chơi cho tất cả mọi người Nếu chúng ta
biết tận dụng game như một tiến bộ của khoa học kỹ thuật để phục vụ cho
con người cho tổ quốc thì game là một hình thái văn hoá mới tiến bộ mới
đáng để chứng ta ghi nhận và phát triển
2 Ƣu điểm của game và những vấn đề đặt ra
2.1 Ƣu điểm
Khi chúng ta chơi game một cách hợp lý, biết sắp xếp thời gian chơi
một cách khoa học thì game sẽ trở nên có ích đối với chúng ta Một số lợi
ích phải được kể đến như:
+ Cải thiện thị giác
Ai cũng nói rằng “chơi game làm yếu đi thị lực của người chơi”, tuy nhiên,
đã có những nghiên cứu cho thấy game cải thiện thị giác của người chơi
Việc chơi game và nhìn màn hình trong một thời gian vừa phải hay phải
căng mắt tìm ra kẻ thù đang bắn tỉa mình sẽ giúp người chơi tăng cường thị
giác của mình Một khi mắt đã làm quen được với nhịp độ của game thì
trong những lần chơi tiếp theo, mắt của người chơi sẽ không phải làm việc
nhiều như lần đầu và sẽ có hiệu quả cao hơn
+ Mài giũa tư duy giải đố
Theo Hiệp hội tâm lý học Mỹ, việc giải quyết các câu đố trong game dạy
cho người chơi những nguyên tắc cơ bản của tư duy khoa học
Chơi game có thể tăng cường khả năng tư duy logic và làm toán của người
chơi Hầu hết các tựa đề của game đều chứa đựng những yếu tố chiến thuật
nhất định mà người chơi cần phải tìm ra và phát huy các yếu tố trong quá
trình chơi game Chính điều này sẽ luyện tập khả năng tư duy logic của
người chơi một cách có hiệu quả, khiến người chơi có tư duy nhanh nhẹn
hơn
Trang 14Xây dựng chương trình Game sử dụng ngôn ngữ C
Game “Chiếc nón kỳ diệu”
+ Luyện tập sự phối hợp giữa tay và mắt
Sự phối hợp giữa tay và mắt của người chơi sẽ được cải thiện lên rất nhiều
khi chơi game Hầu như tất cả những game được yêu thích ngày nay đều đòi
hỏi những động tác của bàn tay, ngón tay chính xác, nhanh nhẹn và liên tục
Nhờ đó, cơ tay của người chơi sẽ được luyện tập và người chơi game sẽ
nhanh tay nhanh mắt hơn so với những người không chơi game
+ Tốc độ phản ứng và độ tập trung được cải thiện
Tốc độ phản ứng sẽ được tăng lên đáng kể trong quá trình người chơi chơi
game Hầu như tất cả các game đều yêu cầu người chơi phải phản ứng
nhanh Nếu chúng ta làm một cái gì đó nhiều thì ngày càng thành thạo trong
công việc đó Do đó, game tăng cường sự phản xạ và tốc độ phản ứng của
người chơi
Hầu hết trong tất cả các game người chơi cần phải tập trung cao độ trong
một khoảng thời gian nhất định Do đó, khi chơi game người chơi phải tập
trung hết sức và dẫn đến độ tập trung được cải thiện rõ rệt
Trang 15+ Tự làm mọi việc
Không chỉ tìm cách chỉnh sủa, tối ưu hóa trò chơi, người chơi còn phải tự
mình thực hiện các nhiệm vụ mà không thể cầu cứu sự giúp đỡ của người
khác, nhất là trong những tình huống ngặt nghèo Dần dần, người chơi sẽ có
thói quen tự giải quyết các vấn đề khó khăn
Game phá bom
+ Hiểu biết về lịch sử
Những người ham tìm hiểu khi chơi game sẽ cảm nhận được không gian, các
nhân vật lịch sử và không ngại môn học lịch sử ở trường Họ có thể khám
phá mọi thứ, từ bí ẩn Hy Lạp đến những kẻ cướp biển thế kỷ 18 hay các tình
tiết của thế chiến
Trang 16Xây dựng chương trình Game sử dụng ngôn ngữ C
Trò chơi “Đế chế” giúp người chơi tìm đến với không gian Hy Lạp
cổ đại, với rất nhiều những công việc và cuộc chiến đấu hàng ngày của con
người thời đó
+ Khỏe mạnh hơn
Các loại máy yêu cầu sự vận động của cơ thể trong khi chơi game khiến
người ta vui tươi, sảng khoái hơn nếu biết đặt lịch chơi - tập luyện đúng
mức
+ Hỗ trợ các môn học ở trường
Nhiều trường học ở Anh, Mỹ đã đưa game vào nhà trường vì họ thấy đây là
cách lý tưởng để dạy học Các thí nghiệm, các quy tắc vật lý, hóa học… đều
có thể thực hiện trên môi trường ảo dễ dàng và không gây nguy hiểm
Trang 17
Một phản ứng hóa học được thực hiện trong môi trường ảo
+ Có thêm bạn bè
Những game có cơ chế thi đấu online là nơi người chơi không chỉ thể hiện
khả năng của mình mà còn là nơi có thể chia sẻ nhiều chuyện trong cuộc
sống Người chơi có thể vừa chơi game vừa trò chuyện, tán gẫu với nhau, từ
đó giúp những người chơi có thêm được nhiều bạn bè ở nhiều vùng, miền
khác nhau
+ Kỹ năng đọc hiểu tốt hơn
Những bài đọc hiểu trong kỳ thi Ielt hay Toefl hướng đến khả năng suy luận
hơn là biết trước Và các hưóng dẫn bằng tiếng Anh ở các trò chơi cũng có
những điểm tương tự Hơn nữa, chơi nhiều game mang lại cho người chơi sự
hiểu biết về các nền văn hóa khác nhaảctên thế giới ví dụ như nền văn hóa từ
Mỹ, Nhật…
2.2 Các vấn đề đặt ra
Trò chơi điện tử rất hấp dẫn đối với học sinh và phần lớn là học sinh
trung học, cũng có phần một ít là một số các em học sinh đang ở tuổi nhi
đồng Do trò chơi điện tử có hình ảnh đẹp, màu sắc được phối hợp hài hòa
nhưng cũng có phần bí ẩn làm cho người chơi cảm thấy hồi hộp, bị lôi cuốn
Trang 18Xây dựng chương trình Game sử dụng ngôn ngữ C
theo trò chơi.Về nhân vật cũng sinh động không kém gì hình ảnh.Về âm
thanh có trò thì có điệu nhạc vui nhộn, có trò thì có điệu nhạc hoành tráng
của những trận đánh nhau giữa hai game thủ
Ngày nay, nền công nghệ thông tin ngày càng phát triển nên đã tạo ra
nhiều trò chơi hay, hấp dẫn mọi người và nhất là học sinh Nhiều trò chơi mà
các game thủ có thể nói chuyện với nhau thông qua bàn phím của vi tính
Nhiều trò chơi hấp dẫn các học sinh hiện nay như Audition, Boom, Võ
Lâm, Nhiều trò còn áp dụng nhiều kĩ thuật mới của ngành tin học làm cho
nhân vật của các trò chơi có thể di chuyển nhanh, động tác mềm mại, uyển
chuyển hơn Trò chơi điện tử rất hấp dẫn đối với học sinh hiện nay nhờ vào
hình ảnh sinh động, nhân vật của trò chơi đẹp, âm thanh phù hợp với trò
chơi và đặc biệt là họ có thể nói chuyện với nhau khi đang chơi
Vấn đề đặt ra đối với những người tạo lập và phát triển trò chơi là:
không những phải tạo ra những trò chơi hay, hấp dẫn, hình ảnh đẹp, màu sắc
hài hòa mà các trò chơi đó còn phải phát huy được tư duy của người chơi,
mang tính giáo dục cao và phù hợp với từng lứa tuổi
Còn đối với người chơi, cần phải chọn được nội dung chơi phù hợp, thực
hiện nghiêm ngặt các quy định về thời gian dành cho giải trí, thư giãn,
không để ảnh hưởng đến các công việc khác
Trang 19CHƯƠNG 3 XÂY DỰNG CHƯƠNG TRÌNH GAME BẰNG NGÔN NGỮ C
1 Giao diện menu chính:
Chương trình xây dựng menu gồm 6 chức năng :
1 CO CARO : cờ caro dành cho hai người chơi
2 XEP SO: trò chơi xếp số
3 DUOI BAT: trò chơi đuổi bắt
4 HUNG QUA: trò chơi hứng quả
5 BAN SUNG: trò chơi bắn súng
6 THOAT: chức năng thoát khỏi menu
Để đi đến một chức năng nào đó ta dùng các phím mũi tên lên hoặc xuống
tương ứng với mỗi trò chơi Để chọn chức năng ta dùng phím „Enter‟
Trang 20Xây dựng chương trình Game sử dụng ngôn ngữ C
2 Các chương trình trò chơi
2.1 Trò chơi cờ caro
+ Bài toán
Cờ caro dành cho 2 người chơi, mỗi người tương ứng với một quân
cờ là “X” và “O” Bàn cờ gồm có 9 ô, người chơi lần lượt chọn vị trí ô cờ để
đặt quân đi tương ứng Ván cờ sẽ xác định người thắng nếu người đó có đủ 3
quân cờ của mình được đặt theo hàng ngang, dọc hoặc chéo
+ Thuật toán
- Bước 1: Hai người chơi lần lượt chọn vị trí ô cờ để đặt quân đi tương
ứng
- Bước 2: Nếu người chơi nào có đủ 3 quân cờ được đặt theo hàng
ngang, dọc hoặc chéo trước thì người đó thắng
- Bước 3: Hết ván cờ, nếu người chơi muốn chơi tiếp thì ấn vào “Y” để
tiếp tục chơi ván khác, còn nếu không đồng ý chơi tiếp thì nhấn phím “N” để
cout<<"co caro danh cho 2 nguoi choi";
gotoxy(10,5); cout<<"nhap o so?";
gotoxy(15,7); cout<<"0";
gotoxy(30,7); cout<<"1";
gotoxy(45,7); cout<<"2";
Trang 21if(t==0) {x=0;y=0; goto play;}
if(t==1) {x=1;y=0;goto play;}
if(t==2) {x=2;y=0;goto play;}
if(t==3) {x=0;y=1;goto play;}
if(t==4) {x=1;y=1;goto play;}
if(t==5) {x=2;y=1;goto play;}
if(t==6) {x=0;y=2;goto play;}
if(t==7) {x=1;y=2;goto play;}
if(t==8) {x=2;y=2;goto play;}
else
Trang 22Xây dựng chương trình Game sử dụng ngôn ngữ C
+ Giao diện chương trình
Trước hết, dùng phím mũi tên di chuyển chọn chức năng “CO CARO”
trên menu chương trình chính: