Sau sáu tháng tìm hiểu, nghiên cứu và xây dựng, chúng em đã xây dựng
đƣợc một phần mềm trò chơi “VUI HỌC PASCAL” giúp cho ngƣời chơi có thể tự
học, tự ôn luyện ngôn ngữ lập trình Pascal. Phần mềm này đƣợc xây dựng trên công
nghệ Flash với ActionScript đã đạt đƣợc những kết quả sau
- Xây dựng đƣợc phần mềm tƣơng đối hoàn chỉnh cho phép ngƣời chơi có thể
tự học, ôn tập kiến thức ngôn ngữ lập trình Pascal thông qua hệ thống câu
hỏi dƣới nhiều dạng: trắc nghiệm, điền khuyết, so khớp, lắp ghép, xây dựng
thuật toán, xem mô phỏng 
- Ngƣời chơi có thể sử dụng trò chơi này để vừa học vừa chơi ngôn ngữ lập
trình Pascal, hệ thống có thể giúp đỡ ngƣời chơi khi gặp khó khăn về kiến
thức dựa vào mô hình KG
Mặc dù đã nỗ lực và cố gắng rất nhiều nhƣng do thời gian và khả năng chƣa cho
phép nên đề tài còn một số hạn chế:
- Số thuật toán đƣợc mô phỏng trong chƣơng trình còn ít.
- Hệ thống câu hỏi, bài tập trong cơ sở dữ liệu còn hạn chế
                
              
                                            
                                
            
 
            
                
91 trang | 
Chia sẻ: builinh123 | Lượt xem: 2404 | Lượt tải: 2
              
            Bạn đang xem trước 20 trang tài liệu Khóa luận Xây dựng phần mềm vui học lập trình pascal, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
game nhận thấy 
cần phải có một lý thuyết để xây dựng, phát triển game hấp dẫn hơn và họ đã dựa 
vào lý thuyết về game (Game Theory) để xây dựng các thế hệ game sau này. 
 Game Theory là một nhánh của toán học ứng dụng. Ngành này nghiên cứu 
các tình huống chiến thuật của một trò chơi, trong đó các đối thủ lựa chọn các hành 
động, chiến thuật khác nhau để giành đƣợc chiến thắng. Ngày nay,nhờ vào lý thuyết 
này game đã đƣợc phát triển rất mạnh mẽ và có rất nhiều thể loại: hành động, đối 
kháng, chiến thuậtvới nhiều mục đích khác nhau, từ giải trí đơn thuần cho đến 
dạy cho ngƣời học những kỹ năng, ngôn ngữ, môn học 
I.1.2 Các thành phần cơ bản của game 
 Một game gồm có 4 thành phần cơ bản là: ngƣời chơi – Player, chiến lƣợc – 
Strategy, thu hoạch – Payoff, luật chơi – rule.[2] 
 a. Ngƣời chơi hay đấu thủ( player) 
 - Ngƣời chơi có thể cá nhân hay một tập thể. 
 - Ngƣời chơi là tác nhân có thể quyết định và nhận các kết quả tƣơng ứng với 
quyết định của mình. 
 b. Chiến lƣợc (strategy) 
 - Mỗi ngƣời chơi có các kế hoạch hành động khả thi cho riêng mình, nó là 
một chuỗi các hành động (bƣớc đi) sao cho khi chơi đạt đƣợc nhiều kết quả nhất 
hay giành đƣợc chiến thắng. 
 c. Thu hoạch (payoff) 
 - Mỗi ngƣời chơi sẽ chọn một chiến lƣợc cho riêng mình và khi đó cuối trò 
chơi mỗi ngƣời sẽ thu đƣợc một kết quả, điều đó gọi là thu hoạch. 
 - Ngƣời chơi đƣợc xem là chơi giỏi nếu với các chiến lƣợc của mình đạt 
đƣợc thu hoạch tối đa. 
14 
 d. Luật chơi ( rule ) 
 - Tập hợp tất cả quy tắc, cách thức ngƣời chơi phải hành động theo. 
Các thành phần trong game Cờ vua: 
Hình 1.2 – Game cờ vua[10] 
 Ngƣời chơi 
Có thể là hai đấu thủ, hoặc giữa một đấu thủ với máy vi tính. 
 Chiến lƣợc 
 Mỗi “nƣớc đi” ngƣời chơi có thể chọn lựa trong 16 quân cờ. Từng quân cờ 
sẽ có quy định riêng về cách đi. 
 Ngƣời chơi sẽ phối hợp các nƣớc đi trên từng quân cờ để loại bỏ quân cờ 
của đấu thủ. 
 Thu hoạch 
 Là kết quả đạt đƣợc sau mỗi “nƣớc đi” của ngƣời chơi (loại bỏ đƣợc quân 
cờ của đối phƣơng). 
 Đến khi loại bỏ đƣợc quân cờ “Vua” của đối phƣơng thì coi nhƣ ngƣời 
chơi dành đƣợc chiến thắng 
15 
 Luật chơi 
 Mỗi đấu thủ sẽ lần lƣợt đi các quân của mình sau khi đối phƣơng đã đi 
xong một nƣớc và phải tuân thủ theo quy định riêng của từng quân cờ. 
I.2. Trò chơi giáo dục - Educational game 
 Trò chơi từ lâu đã trở thành một phần của giáo dục. Và ngày nay với sự tiến 
bộ của công nghệ mới, game gần đây đã nổi lên nhƣ một công cụ giảng dạy mới. 
Các nhà tâm lý đã chứng minh rằng “Trò chơi có thể đƣợc thiết kế phù hợp với các 
mục tiêu khác nhau”.[2] 
I.2.1 Khái niệm 
 Educational game là một hình thức game đƣợc thiết kế dành riêng cho việc 
học, đây là hình thức kết hợp giữa “vừa học vừa chơi” .[1] 
 Hay Educational game là sự phối hợp của nội dung giáo dục, các nguyên tắc 
học tập và trò chơi máy tính. [1] 
 Game giáo dục là chƣơng trình đƣợc thiết kế để thúc đẩy quá trình học tập 
bằng các kết hợp trò chơi vào dạy học. Là công cụ học tập đƣợc sử dụng trong quá 
trình giảng dạy và học tập. [1] 
I.2.2 Lợi ích của trò chơi trong giáo dục 
 Trò chơi sẽ mang lại cho học sinh sự thƣ giãn, giải trí và tâm lý thoải mái 
trong khi học. Khi tham gia trò chơi học sinh sẽ học một cách say mê, đây là điều 
hiếm thấy nếu chúng ta sử dụng các phƣơng pháp dạy học truyền thống để truyền 
đạt cho kiến thức cho học sinh. 
Sau đây là một số lợi ích của game: 
 Tạo động lực học tập cho học sinh thông qua các thách thức, cạnh tranh 
trong game. 
 Trong game có thể kiểm tra đƣợc khả năng vận dụng kiến thức của học sinh. 
 Tạo điều kiện củng cố và mở rộng kiến thức cho học sinh. 
16 
 Tăng cƣờng phát triển kỹ năng và khả năng tập trung của học sinh. 
 Thu hút sự tham gia của học sinh. 
 Giúp học sinh tiếp nhận tiếp nhận thông tin dễ dàng hơn. 
I.2.3 Ứng dụng game trong dạy học 
 Educational game đã trở thành một phần của giáo dục trong nhiều thập kỷ 
qua. Với tiến bộ của công nghệ gần đây thì Educational game đƣợc xem nhƣ là một 
công cụ giảng dạy đắc lực của giáo viên.Và sau đây là một số tình huống có thể ứng 
dụng Educational game: 
 Sử dụng nhƣ một công cụ rèn luyện: game ở đây đƣợc xem nhƣ một 
phần mềm hỗ trợ ngƣời chơi thực hiện các bài thực hành. Ngƣời giáo 
viên có thể sử dụng game để hỗ trợ việc tự học của học sinh, giúp học 
sinh ôn tập, gợi nhớ lại kiến thức. 
 Dùng để dạy kỹ năng làm việc nhóm: giống nhƣ những phần mềm mô 
phỏng, một số game có thể hƣớng dẫn kỹ các kỹ năng làm việc nhóm cơ 
bản cho ngƣời chơi. Ngoài ra, một vài game có thể đƣợc chơi chung bởi 
nhiều ngƣời thông qua mạng intenet. Do đó, tạo cơ hội cho ngƣời chơi 
rèn luyện và nâng cao kỹ năng phối hợp cũng nhƣ làm việc nhóm của 
mình. 
 Dùng để khen thƣởng, khích lệ học sinh: có lẽ việc sử dụng phổ biến 
nhất của game là để thƣởng cho công việc tốt. Nhƣ bạn biết việc khen 
thƣởng, khích lệ, động viên học sinh trong quá trình tiếp thu kiến thức là 
rất cần thiết. Điều này giúp cho học sinh có cảm giác vui sƣớng, có động 
lực học tập hơn rất nhiều. Do đó khi cần thiết bạn nên sử dụng game để 
động viên tinh thần học sinh. [7] 
17 
I.2.4 Một số điều cần lƣu ý khi sử dụng game trong giáo dục 
 Sử dụng trò chơi một cách hợp lý: một số nhà giáo dục cho rằng đa số 
hiện nay việc sử dụng trò chơi trên máy tính đang bị lạm dụng, sai mục 
đích và sử dụng không thích hợp. Do đó chúng ta phải lựa chọn và sử 
dụng hợp lý các trò chơi để các học sinh có hứng thú học tập chứ không 
chỉ để giải trí đơn thuần. 
 Tác động đến tất cả học sinh: bạn phải đảm bảo rằng khi tiến hành các 
game chơi trong khi dạy học thì tất cả các học sinh trong lớp đều phải 
tham gia và hiểu rõ đƣợc ý nghĩa cũng nhƣ vai trò của trò chơi. 
 Nhấn mạnh những nội dung kỹ năng: trƣớc khi học sinh bắt đầu chơi, 
hãy chắc chắn các học sinh của bạn hiểu đƣợc luật chơi và các hoạt động 
chính trong trò chơi. Và sinh viên nên tự mình nhận ra những quy luật 
chung trong game với những gợi ý ban đầu của giáo viên. [7] 
I.2.5 Các đặc điểm tạo nên tính hấp dẫn trong game giáo dục 
a. Phải có mục tiêu rõ ràng 
 Một trò chơi đƣợc đánh giá là tốt khi bạn xây dựng đƣợc mục tiêu rõ ràng. 
Lúc này ngƣời chơi sẽ biết đƣợc họ học đƣợc cái gì, và vận dụng những kiến thức 
đã học nhƣ thế nào trong trò chơi. 
b. Phải chứa nhiều kiến thức và cơ hội thực hành 
 Trong game và mô phỏng, ngƣời học đƣợc xem, đƣợc trình bày với tập hợp 
các kiến thức và có cơ hội thực hành. Lúc này việc học rất nhẹ nhàng, kiến thức 
đƣợc truyền đạt từ một thế giới đầy màu sắc, đa dạng chứ không trừu tƣợng, khô 
khan nhƣ trong sách vở. 
c. Thƣờng xuyên khen thƣởng, khích lệ ngƣời chơi 
 Một trò chơi hấp dẫn là trò chơi thƣờng xuyên khích lệ ngƣời chơi thông qua 
các điểm số, vật thƣởng hoặc các hình thức khác. Nhờ vào các yếu tố khích lệ này, 
18 
ngƣời chơi sẽ cố gắng đạt đƣợc điểm thƣởng bằng cách cố gắng tìm hiểu, thu thập 
thông tin về các cách chơi, chiến lƣợc trong trò chơi. 
d. Phải liên hệ với thực tế 
 Đối với game giáo dục thì nội dung của game rất quan trọng, do đó nó cần 
gắn liền với thực tế, gần gũi với ngƣời chơi. Càng gần gũi với đời sống của ngƣời 
chơi thì game càng lôi cuốn, hấp dẫn ngƣời chơi. 
e. Phải có thời gian giới hạn trong trò chơi 
 Để luôn cuốn hút ngƣời chơi thì cần có giới hạn thời gian trong game, nếu 
nhƣ không có giới hạn về thời gian thì ngƣời chơi sẽ chơi mãi, chơi hoài. Từ đó gây 
sự nhàm chán, không tạo đƣợc sự hứng thú trong khi chơi. 
f. Cần có gợi ý, giúp đỡ 
 Cần cung cấp phần giúp đỡ, hỗ trợ ngƣời chơi bằng các gợi ý hoặc chỉ dẫn 
trong từng phần chơi. Đối với game giáo dục chúng ta cần có phần hỗ trợ kiến thức 
cho ngƣời chơi, giúp ngƣời học có thể vƣợt qua các khó khăn về kiến thức trong khi 
chơi. 
h. Tạo đƣợc tính đối kháng cao 
 Để tạo tính hấp dẫn cần có sự đối kháng trong game, đƣợc thể hiện qua: 
 Sự xung đột của trò chơi. 
 Sự cạnh tranh giữa ngƣời chơi với máy tính, giữa những ngƣời chơi với 
nhau. 
 Nhân vật đối lập, phản biện. 
g. Xây giao diện đẹp 
 Đây là đặc điểm không thể thiếu đối với bất kỳ một game hấp dẫn nào, ngƣời 
chơi có thích thú hay không phụ thuộc rất nhiều vào đặc điểm này. 
19 
I.2.6 Quá trình thiết kế Game Educational 
 Các thể loại game thƣờng lấy ý tƣởng từ những cuốn tiểu thuyết, kịch bản 
của các bộ phim, truyện tranh Còn đối với Educational game thì ý tƣởng chính 
phụ thuộc vào nội dung học tập mà tác giả muốn truyền đạt cho ngƣời chơi. Do đó 
thiết kế Educational game khác biệt rất nhiều so với thiết kế trò chơi máy tính thông 
thƣờng bởi vì nó chủ yếu liên quan đến phƣơng pháp sƣ phạm. Khi thiết kế trò chơi 
giáo dục, ngƣời giáo viên thƣờng xây dựng trò chơi bằng cách xác định mục tiêu 
học tập hoặc kết quả học tập đạt đƣợc sau khi chơi hơn là dựa vào yếu tố hấp dẫn, 
lôi cuốn của trò chơi. 
 Educational game chủ yếu đƣợc thiết kế để hỗ trợ ngƣời học đạt đƣợc mục 
tiêu học tập tuy nhiên đã là trò chơi thì cần có tính thú vị, hấp dẫn để thu hút ngƣời 
chơi. Do đó trò chơi này thƣờng đặt giáo dục lên hàng đầu và yếu tố giải trí đứng ở 
vị trí thứ hai. 
Quá trình tạo một Educational game cần sự kết chặt chẽ giữa ngƣời giáo viên 
và đội ngũ phát triển phần mềm. Đây là một quá trình lặp đi lặp lại các bƣớc (thiết 
kế, viết game, thử nghiệm và phát hành) 
20 
Sơ đồ về thiết kế một Educational game: [16] 
Hình 1.3 - Sơ đồ thiết kế Educational game 
21 
I.2.7 Các dạng game thƣờng gặp 
a. Game hành động 
 Thể loại này thƣờng đƣợc thiết kế để dạy một môn học cụ thể. Trong đó 
ngƣời chơi thƣờng sẽ nhập vai trở thành một nhân vật trong game. Và để vƣợt qua 
các thử thách, trở ngại của từng màn chơi trong game thì họ phải vận dụng kiến 
thức để giải đáp các câu hỏi, cũng nhƣ bài tập trong game đƣa ra. Khi giải đáp đúng 
câu hỏi, bạn sẽ đƣợc cung cấp một số công cụ để chống lại kẻ thù trong game.Thể 
loại game này yêu cầu ngƣời chơi sự phản xạ nhanh chóng, chính xác và đúng thời 
điểm để vƣợt qua các trở ngại. 
 Ví dụ: Game Timez Attack 
Hình 1.4 – Game Timez Attack[11] 
- Nhà sản xuất: công ty Bigbrain 
- Mục đích: Dạy học môn toán cho trẻ em. 
- Bản quyền: Miễn phí. 
- Link dowload:  
- Chơi online:  
 Với trò chơi Timez Attack, đƣợc thiết kế trong một môi trƣờng đồ họa phong 
phú, các em sẽ say mê với câu chuyện trong khung cảnh hấp dẫn và đầy thách thức. 
22 
Các em không chỉ đƣợc học môn toán mà các em còn đƣợc trải qua những thời khắc 
phiêu lƣu cuốn hút. Giúp các em có đƣợc tƣ duy nhạy bén, tinh thần dũng cảm và 
có đƣợc những giây phút giải trí vui chơi trong khi ôn luyện và học tập. 
b. Game phiêu lƣu, mạo hiểm 
 Ở dạng game này điểm đƣợc chú ý chính là cốt chuyện của game, tốc độ 
game này thƣờng chậm hơn so với game hành động. Cách thức của game là ngƣời 
chơi phải thu thập thông tin, giải quyết các mã số và bí ẩn để thăng tiến trong trò 
chơi. Mục tiêu thƣờng gặp ở thể loại trò chơi này là giúp ngƣời chơi hiểu đƣợc 
phong tục tập quán, lịch sử của một quốc gia hay một vùng nào đó. 
 Ví dụ: Game Ansel & Clair’s Adventure’s in Africa 
Hình 1.5 – Game Timez Attack[12] 
- Nhà sản xuất: Kid Inc 
- Mục đích: Dạy học môn địa lý – mô tả về tự nhiên. 
- Bản quyền: Có phí. 
- Link dowload:  
 Là một trò giáo dục phiêu lƣu dạy cho trẻ em về ba khu vực chính của Châu 
Phi: sông Nile, sa mạc Sahara, và Serengeti. Mỗi khu vực có một số loài động vật, 
23 
yếu tố văn hóa, đặc điểm của vùng đất để học sinh để tìm hiểu. Câu chuyện đƣợc 
mô tả nhƣ một cuộc khám phá của một ngƣời nƣớc ngoài và một robot đang xâm 
nhập vào trái đất để tìm hiểu về châu Phi. 
c. Game mô phỏng 
 Đây là thể loại mô tả, tái hiện lại các hoạt động trong thế giới thực và có các 
mục đích khác nhau nhƣ: đào tạo, phân tích, dự đoán các hoạt động. Một số loại 
game mô phỏng nổi tiếng nhƣ là game chiến tranh, game kinh doanh hay game 
nhập vai,đối với lĩnh vực giáo dục thì loại game nhập vai là game chúng ta thƣờng 
nhận thấy nhất ở thể loại này. 
 Ví dụ:Game Sim city. 
Hình 1.6 – Game Sim City[13] 
 - Nhà sản xuất: Maxis, một chi nhánh của Electronic Arts. 
 - Mục đích: Dạy ngƣời chơi cách xây dựng và quản lý một thành phố. 
 - Bản quyền: Miễn phí 
 - Link dowload:  
 Game cho phép ngƣời chơi tạo ra một vùng đất bằng công cụ biến đổi địa 
hình, sau đó thiết kế và xây dựng các khu vực định cƣ để phát triển thành phố. 
24 
Ngƣời chơi có thể quy hoạch các khu vực nhƣ thƣơng mại, dân cƣ, và công nghiệp 
cũng nhƣ xây dựng. Và duy trì hoạt động của các dịch vụ công cộng, hệ thống giao 
thông và công trình công cộng. Thành công của ngƣời chơi là phải quản lý đƣợc về 
mặt tài chính, môi trƣờng, và chất lƣợng cuộc sống cho cƣ dân thành phố. 
d. Game đối kháng 
 Thể loại game này tập trung vào trận chiến 1-1 giữa hai nhân vật, một trong 
hai đối thủ này có thể do máy điều khiển. Nếu chơi game này ngƣời học sẽ đóng vai 
trò là một trong 2 nhân vật đối kháng, họ sẽ giải đáp câu đố liên quan đến một môn 
học nào đó, nếu trả lời nhanh và đủ số lƣợng câu hỏi thì sẽ đánh bại đƣợc kẻ thù. 
 Ví dụ: Game Zombie Master 
Hình 1.7 - Game Zombies Master[14] 
 - Nhà sản xuất:  
 - Mục đích: Dạy học môn toán 
 - Bản quyền: Miễn phí 
 - Link chơi online:  
25 
e. Game dạng thẻ - Card game 
 Một hình thức chơi games thông qua các thẻ chơi. Các dạng Flash card 
games đƣợc sử dụng giảng dạy trong toán học, sinh học và một số trò chơi để cải 
thiện trí nhớ. 
 Sau đây là một ví dụ game đƣợc sử dụng giảng dạy trong hóa học. 
Hình 1.8 – Game AtomMate [11]
 - Nhà sản xuất: công ty DuPont 
 - Mục đích: Dạy học mô hóa 
 - Bản quyền: Có phí. 
 - Link chơi online:  
 AtomMate là một card game hóa học bao gồm một tầng 49 thẻ bài với tên, 
biểu tƣợng và định nghĩa về các chất trong bảng tuần hoàn. Trò chơi này đƣợc sử 
dụng để tìm hiểu các vấn đề có liên quan đến các hợp chất hóa học, đƣợc thiết kế 
cho học sinh từ 10 tuổi trở lên.Chƣơng II: Phân tích và thiết kế. 
26 
 CHƢƠNG II 
PHÂN TÍCH VÀ THIẾT KẾ 
PHẦN MỀM 
“VUI HỌC LẬP TRÌNH PASCAL” 
27 
CHƢƠNG II: PHÂN TÍCH VÀ THIẾT KẾ PHẦN MỀM “VUI HỌC 
LẬP TRÌNH PASCAL” 
II.1 Giới thiệu trò chơi 
 Ý tƣởng: Xuất phát từ việc tiếp cận với phần mềm học tiếng Anh của thiếu nhi 
với các dạng mini game thú vị đƣợc xây dựng trên công nghệ Flash từ đó chúng 
tôi có ý tƣởng để xây dựng một trò chơi với tên gọi “VUI HỌC PASCAL”. Với 
trò chơi này ngƣời chơi có thể vừa chơi vừa học đƣợc kiến thức lập trình Pascal 
bằng cách ngƣời chơi sẽ tham gia vào thế giới Xì Trum để khám phá những thử 
thách. Để vƣợt qua những thử thách đó ngƣời chơi phải trả lời các câu hỏi trong 
một khoảng thời gian ngắn. Ở mỗi chặng đƣờng nếu gặp khó khăn ngƣời chơi có 
thể nhờ đến sự trợ giúp. 
 Đối tƣợng: Tất cả các đối tƣợng tham gia để tự học, tự ôn luyện kiến thức ngôn 
ngữ lập trình Pascal. 
 Phạm vi: Kiến thức tin học phổ thông – Tin học lớp 11 
 Trò chơi “VUI HỌC PASCAL” đƣợc xây dựng gồm 4 game mini với mục tiêu 
giúp ngƣời chơi tự học, tự ôn luyện kiến thức ngôn ngữ lập trình Pascal. 
 Game 1: Cú Pháp Câu Lệnh – Giúp ngƣời chơi tự học, ôn luyện kiến thức 
lý thuyết, cú pháp của các câu lệnh của ngôn ngữ lập trình Pascal dƣới 3 
dạng câu hỏi theo từng màn chơi 
o Màn 1: Trắc nghiệm – Câu hỏi dƣới dạng trắc nghiệm: Ở màn chơi 
này ngƣời chơi sẽ học đƣợc kiến thức cú pháp câu lệnh pascal thông 
qua câu hỏi trắc nghiệm 4 đáp án 
o Màn 2: Điền khuyết – Câu hỏi dƣới dạng điền khuyết: Ở màn chơi 
này ngƣời chơi sẽ học đƣợc kiến thức cú pháp câu lệnh pascal thông 
qua dạng câu hỏi điền khuyết (khuyết 1 vị trí) 
o Màn 3: So khớp – Câu hỏi dƣới dạng so khớp (so trùng) đáp án: Ở 
màn chơi này ngƣời chơi sẽ học đƣợc kiến thức cú pháp câu lệnh 
28 
pascal thông qua dạng câu hỏi so khớp (1 bộ câu hỏi gồm 4 câu so 
khớp) 
 Game 2: Hoàn Chỉnh Chƣơng Trình – Giúp ngƣời chơi tự học, ôn luyện 
kiến thức về bài tập Pascal dƣới dạng điền khuyết. Ở màn chơi này ngƣời sẽ 
điền khuyết (khuyết 2 vị trí) cho một đoạn code với số lƣợng đáp án theo 
mỗi màn là 2, 3 và 4 đáp án 
 Game 3: Lắp Ghép – Giúp ngƣời chơi tự học, tự ôn luyện kiến thức về bài 
tập Pascal dƣới dạng lắp ghép các câu lệnh thành đoạn code, thuật toán. 
Ngƣời chơi sẽ sắp xếp các câu lệnh rời rạc thành một đoạn code theo yêu 
cầu của đề bài 
 Game 4: Mô phỏng thuật toán – Giúp ngƣời chơi tự học, tự ôn luyện kiến 
thức về bài tập Pascal dƣới dạng mô phỏng thuật toán theo từng bƣớc, xây 
dựng sơ đồ khối. 
 Các thành phần trong trò chơi 
 Kiến thức 
Kiến thức trong trò chơi đƣợc xây dựng dƣới dạng Knowledge Graph (tạm dịch 
là đồ thị tri thức) – viết tắt là KG. Ý tƣởng cơ bản của mô hình là gắn kết tính sƣ 
phạm vào trong quá trình thiết kế và xây dựng nội dung học tập. KG đƣợc biểu diễn 
nhƣ sau: Graph = core content knowledge: node = prime idea (the smallest unit 
of learning knowledge) – viết tắt là PI1; arc = hard-condition/necessary-condition 
(relationship between the prime ideas) [3,4,5]. 
Giả định trong trò chơi “VUI HỌC PASCAL” các PI và mối liên hệ giữa chúng 
đƣợc định nghĩa một cách đầy đủ và hợp lý bởi các chuyên gia sƣ phạm và chuyên 
gia nội dung. 
1 PI là một tập các đơn vị kiến thức học nhỏ nhất – tạm dịch là ý giảng chính, một đơn thể kiến thức (compact 
knowledge) 
29 
Hình 2.1 – Knowledge Graph ở các mức độ theo ngữ cảnh sử dụng 
Hình 2.2 – Sơ đồ ý nghĩa các thành phần của một khóa học 
30 
Bảng mô tả 
STT Thành phần Mô tả 
1 Course 
Khóa học đƣợc hiểu là một phần hay một môn học cụ thể đƣợc 
gắn với những yêu cầu về mặt mục tiêu, kiến thức, kỹ năng, và 
thái độ. Nó đƣợc biên soạn từ một tập các thành phần nhỏ hơn 
gọi là bài học. 
2 Lesson 
Bài học, đƣợc tổ chức để hoàn tất một trong những mục tiêu 
chung của một môn học, hay một tập các mục tiêu liên quan 
3 Topic 
Chủ đề/ đề mục đƣợc thiết kế cho việc tự học. Nó là một bài 
giảng Online hoặc Offline đƣợc xác định trên một lƣợng kiến 
thức cụ thể để hoàn thành một mục tiêu ở mức thấp, đơn giản. 
Vì vậy nó cũng đƣợc xem nhƣ là thành phần nội dung học tập 
nhỏ nhất cần chuyển tải đến ngƣời học. Thành phần của Topic 
có những thành phần sau 
STT Thành phần Mô tả 
1 Goal Mục tiêu chủ đề 
2 Content Nội dung của Topic 
3 Importance Độ quan trọng của chủ đề 
4 Study time Thời gian học một chủ đề 
4 PI 
Ý chính là tập các đơn vị kiến thức nhỏ nhất. Mỗi Topic có thể 
có nhiều PI. Mỗi PI có những thành phần sau 
STT Thành phần Mô tả 
1 Content Nội dung của PI 
2 Weight 
Trọng số - dùng để sắp xếp thứ tự của PI, PI 
nào cần học trƣớc, PI nào học sau. 
3 Importance 
Độ quan trọng –Dùng để xác định PI nào quan 
trọng hơn. 
31 
Nhân vật 
 Xì trum: ngƣời chơi sẽ đóng vai thành xì trum để tham gia trò chơi 
 Nhân vật hỗ trợ người chơi: nấm, bông hoa, thanh gỗ... Ngƣời chơi sẽ 
chọn (hoặc kéo thả) để trả lời cho các câu hỏi 
 Chiến lƣợc 
 Ở mỗi màn chơi hệ thống sẽ cung cấp cho ngƣời chơi một số nhân vật 
hỗ trợ với số lƣợng giới hạn, ngƣời chơi có nhiệm vụ là phải nhấp chọn 
(hoặc kéo thả) các nhân vật trong khoảng thời gian quy định. 
 Ngƣời chơi sẽ vận dụng kiến thức ngôn ngữ lập trình Pascal để giải đáp 
các vấn đề - bài toán nhƣ: câu hỏi, câu đố, bài tập(Giả định rằng tập 
kiến thức KG đã đƣợc chuyên gia sƣ phạm xây dựng). 
 Thu hoạch: 
 Ngƣời chơi sẽ vƣợt qua các đƣợc các thử thách, khó khăn trong từng 
màn chơi bằng cách trả lời đúng các câu hỏi liên quan đến ngôn ngữ 
lập trình Pascal. 
 Luật chơi: 
 Muốn vƣợt qua mỗi màn chơi ngƣời chơi phải trả lời đúng số câu hỏi 
quy định trong từng màn. 
 Trong mỗi màn chơi ngƣời chơi có thể đƣợc giúp đỡ bằng cách cho 
xem lại kiến thức trong lúc trả lời câu hỏi. 
 Nếu ngƣời chơi trả lời đúng ít hơn 50% số câu hỏi của mỗi màn chơi 
thì thua cuộc. 
32 
II.2 Luật chơi – Game Rules 
Trò chơi “VUI HỌC PASCAL” đƣợc xây dựng gồm 4 game mini: 
1) Cú pháp câu lệnh 
2) Hoàn chỉnh chương trình 
3) Lắp ghép 
4) Mô phỏng thuật toán 
 Ngƣời chơi có thể chọn 1 trong 4 game mini bất kỳ để chơi 
 Trong game “Cú pháp câu lệnh”, “Hoàn chỉnh chƣơng trình”, “Lắp ghép” ngƣời 
chơi có quyền lựa chọn kiến thức (chƣơng) và mức độ khó bất kỳ. Mỗi game sẽ 
đƣợc chia ra làm 3 màn chơi. Ngƣời chơi phải lần lƣợt chơi qua màn 1, màn 2 để 
đi đến màn 3 
 Trong game “Mô phỏng thuật toán” ngƣời chơi có quyền lựa chọn 1 trong 5 
thuật toán để chơi. 
Hình 2.3 – Sơ đồ thể hiện cấu trúc trò chơi 
33 
II.2.1 Luật chơi game Cú Pháp Câu Lệnh 
 Cú Pháp Câu Lệnh – Màn 1: Trắc Nghiệm 
- Không gian: Khu vƣờn đầy nấm, ban ngày 
- Nhân vật: 4 chú nấm – mỗi chú nấm đại diện cho một đáp án 
- Loại câu hỏi: Trắc nghiệm 
Hình 2.4 – Sơ đồ thể hiện luật chơi game 1 – màn 1 
34 
 Cú Pháp Câu Lệnh – Màn 2: Điền Khuyết 
 Không gian: ban đêm 
 Loại câu hỏi: điền khuyết 
Hình 2.5: Sơ đồ thể hiện luật chơi game 1 – màn 2 
35 
 Cú Pháp Câu Lệnh – Màn 3: So khớp 
 Không gian: ban đêm 
 Nhân vật: miếng gỗ 
 Loại câu hỏi: So khớp 
Hình 2.6 – Sơ đồ thể hiện luật chơi game 1 – màn 3 
36 
II.2.2 Game Hoàn Chỉnh Chƣơng Trình 
 Hoàn Chỉnh Chƣơng Trình – Màn 1 
 Không gian: vƣờn hoa, ban ngày 
 Nhân vật: 2 bông hoa – mỗi bông hoa đại diện cho một đáp án, 2 chậu – mỗi 
chậu đại diện cho vị trí đáp án còn thiếu 
 Loại câu hỏi: điền khuyết vào đoạn code 
Hình 2.7 – Sơ đồ thể hiện luật chơi game 2 – màn 1 
37 
 Hoàn Chỉnh Chƣơng Trình – Màn 2 
 Không gian: vƣờn hoa, ban ngày 
 Nhân vật: 3 bông hoa – mỗi bông hoa đại diện cho một đáp án, 2 chậu – mỗi 
chậu đại diện cho vị trí đáp án còn thiếu 
 Loại câu hỏi: điền khuyết vào đoạn code 
Hình 2.8 – Sơ đồ thể hiện luật chơi game 2 – màn 2 
38 
 Hoàn Chỉnh Chƣơng Trình – Màn 3 
 Không gian: vƣờn hoa, ban ngày 
 Nhân vật: 2 bông hoa – mỗi bông hoa đại diện cho một đáp án, 2 chậu – mỗi 
chậu đại diện cho vị trí đáp án còn thiếu 
 Loại câu hỏi: điền khuyết vào đoạn code 
Hình 2.9 – Sơ đồ thể hiện luật chơi game 2 – màn 3 
39 
II.2.3 Game Lắp Ghép 
 Lắp Ghép – Màn 1 
 Không gian: vƣờn cỏ, trời mƣa 
 Nhân vật: thanh gỗ - mỗi thanh gỗ đại diện cho 1 dòng lệnh, bảng gỗ - dùng 
để chứa câu hỏi 
 Loại câu hỏi: lắp ghép, sắp xếp thành 1 đoạn code hoàn chỉnh 
Hình 2.10 – Sơ đồ thể hiện luật chơi game 3 – màn 1 
40 
 Game 2 – Lắp Ghép – Màn 2 
 Không gian: vƣờn cỏ, trời mƣa 
 Nhân vật: thanh gỗ - mỗi thanh gỗ đại diện cho 1 dòng lệnh, bảng gỗ - dùng 
để chứa câu hỏi 
 Loại câu hỏi: lắp ghép, sắp xếp thành 1 đoạn code hoàn chỉnh 
Hình 2.11 – Sơ đồ thể hiện luật chơi game 3 – màn2 
41 
 Lắp Ghép – Màn 3 
 Không gian: vƣờn cỏ, trời mƣa 
 Nhân vật: thanh gỗ - mỗi thanh gỗ đại diện cho 1 dòng lệnh, bảng gỗ - dùng 
để chứa câu hỏi 
 Loại câu hỏi: lắp ghép, sắp xếp thành 1 đoạn code hoàn chỉnh 
Hình 2.12 – Sơ đồ thể hiện luật chơi game 3 – màn 3 
42 
II.2.4 Game 4 – Mô phỏng thuật toán 
 Không gian: vƣờn cỏ, trời mƣa 
 Loại câu hỏi: sắp xếp sơ đồ khối, mô phỏng từng bƣớc thuật toán 
Hình 2.13 – Sơ đồ thể hiện luật chơi game 4 
43 
II.3 Yêu cầu chức năng và yêu cầu phi chức năng 
 Yêu cầu chức năng 
o Đối với ngƣời dùng 
STT Yêu cầu chức năng 
1 Cho phép chọn kiến thức, mức độ khó 
2 
Trong lúc đang chơi ngƣời dùng có thể tạm dừng, tiếp tục, 
chơi lại màn với câu hỏi khác, quay lại màn hình chính. 
3 
Ngƣời chơi đƣợc học tập thông qua việc giải quyết các vấn 
đề nhƣ trả lời câu hỏi, câu đố, bài tập hoặc có thể dừng 
game để ôn tập lại kiến thức. 
o Đối với hệ thống 
STT Yêu cầu chức năng 
1 Phân cấp các cấp độ (level), cảnh chơi trong từng màn chơi 
2 
Mỗi màn chơi sẽ ấn định các nhân vật, số lƣợng - mức độ - 
loại câu hỏi khác nhau. 
3 
Ngƣời chơi đƣợc học tập thông qua việc giải quyết các vấn 
đề nhƣ trả lời câu hỏi, câu đố, bài tập hoặc có thể dừng 
game để ôn tập lại kiến thức. 
 Yêu cầu phi chức năng: 
STT Yêu cầu chức năng 
1 Cho phép ngƣời chơi thay đổi nhân vật Xì Trum 
2 Hỗ trợ cài đặt trên môi trƣờng Window XP trở lên. 
3 Cơ sở dữ liệu lƣu trữ ở dạng file XML. 
44 
II.4 Mô hình Use Case 
II.4.1 Mô hình Use Case của trò chơi “VUI HỌC PASCAL” 
Hình 2.14 – Mô hình Use Case của trò chơi “VUI HỌC PASCAL” 
 Danh sách các Actor 
STT Tên Actor Diễn giải 
1 Ngƣời chơi Ngƣời sử dụng hệ thống 
 Danh sách các Use Case của mô hình 
STT Tên Use Case Diễn giải 
1 Chọn game mini Ngƣời sử dụng hệ thống 
2 Chọn kiến thức Chọn kiến thức: bao gồm chọn “chƣơng” và 
“mức độ khó” của trò chơi 
3 Chọn thuật toán Chọn các thuật toán trong hệ thống của trò 
chơi 
Người chơi
Chơi game 2
Tạm dừng
Chơi lại
Tiếp tục
Trợ giúp
Thoát
Chọn game mini
Chọn kiến thức
Chọn thuật toán
Chơi game 1
Chơi game 3
Chơi game 4
Chơi game
45 
4 Chơi game 1 Chơi game 1 – Cú pháp câu lệnh 
5 Chơi game 2 Chơi game 2 – Hoàn chỉnh chƣơng trình 
6 Chơi game 3 Chơi game 3 – Lắp ghép 
7 Chơi game 4 Chơi game 4 – Mô phỏng thuật toán 
8 Chơi game Chơi game – Hoạt động chơi game của ngƣời 
chơi nói chung 
9 Tạm dừng Tạm dừng trò chơi 
10 Tiếp tục Tiếp tục khi đang tạm dừng trò chơi 
11 Trợ giúp Chọn trợ giúp: xem kiến thức liên quan 
12 Chơi lại Chơi lại màn chơi khác 
13 Thoát Thoát khỏi hệ thống 
46 
II.4.2 Mô tả chi tiết chức năng các Use Case 
 Sơ đồ hoạt động chức năng của Use Case “Chọn game mini” 
 Ý nghĩa: Dùng để chọn 1 trong 4 mini game trong chƣơng trình 
 Yêu cầu: Phải chọn kiến thức hoặc chọn thuật toán 
Hình 2.15 – Sơ đồ hoạt động chức năng của Use Case “Chọn Game Mini” 
[Sai]
[Đúng]
Hiển thị màn mở đầu
Màn hình mở đầu
Chọn game
Game được chọn là game 4 Màn hình chọn kiến thức
Màn hình chọn thuật toán
Chọn kiến thức
Màn hình Game 1
Màn hình game 2
Màn hình game 3
Chọn thuật toán
Màn hình game 4
Chọn sẵn sàng
Màn hình chọn game
47 
 Sơ đồ hoạt động chức năng của Use Case “Chơi game” 
 Ý nghĩa: Dùng để diễn tả hoạt động chơi game của ngƣời chơi 
 Yêu cầu: Ngƣời chơi phải đang ở màn hình game 1, game 2, game 3 hoặc game 4 
Hình 2.16 – Sơ đồ hoạt động chức năng của Use Case “Chơi game” 
[đúng]
[sai]
[đúng]
[sai]
Màn hình game
Chọn Tùy chọnChọn Trợ giúp
Chọn hướng dẫn Chọn Thay đổi nhân vật
Chọn Màn hình chính
Chọn Bắt đầu lại
Chọn Đóng
Màn hình trợ giúp
Chọn đóng
MH hướng dẫn
Chọn đóng 1
MH chọn nhân vật
Chọn đóng 2
MH chọn chương
Số câu hỏi được trả lời < số câu hỏi
Chọn đáp án
Thời gian còn
48 
II.5 Thiết kế dữ liệu 
 Mô hình CDM 
0,n
0,n
Y CHINH
ID Y CHINH
TEN Y CHINH
DO QUAN TRONG
GHI CHU
CHU DE
ID CHU DE
TEN CHU DE
DO KHO
TLDK
GHI CHU
CHU DE Y CHINH
ID CD YC
TEN CD_YC
MO TA
GHI CHU
DA TRAC NGHIEM
ID DA TN
DAP AN
DAP AN DUNG
GHI CHU
...
CHUONG
ID CHUONG
TEN CHUONG
Y NGHIA CHUONG
GHI CHU
TU KHOA
ID_TU KHOA
TENTUKHOA
MO TA
GHI CHU
SO KHOP
ID SO KHOP
PHANDAU CH
PHAN CUOI CH
GHI CHU
MONHOC
MA MON HOC
TEN MON HOC
GHI CHU
DIEUKIEN
TRONGSO
DIENKHUYET
ID DK
PHANDAU CH
PHAN CUOI CH
MUCDOKHO
GHI CHU
DAPAN_DIENKHUYET
ID DA DK
DAP AN
DAP AN DUNG
GHI CHU
TRAC NGHIEM
ID_TN
CAU HOI
MUCDOKHO
GHI CHU
DIEN KHUYET COD
ID DK CODE
CAU HOI
MUCDOKHO
MANCHOI
GHI CHU
DA DK CODE
ID DA DK CODE
DAP AN
VI TRI
GHI CHU
LAP GHEP
ID LAP GHEP
MUCDOKHO
MANCHOI
CAU HOI
GHI CHU
DA LAP GHEP
ID_DA_LG
CAU LENH
VI TRI
GHI CHU
49 
o Mô hình PDM 
Y CHINH
ID Y CHINH
TEN Y CHINH
DO QUAN TRONG
GHI CHU
int
nvarchar(100)
int
varchar(200)
CHU DE
ID CHU DE
ID CHUONG
TEN CHU DE
DO KHO
TLDK
GHI CHU
int
int
nvarchar(100)
int
int
nvarchar(200)
CHU DE Y CHINH
ID CD YC
ID CHU DE
ID Y CHINH
TEN CD_YC
MO TA
GHI CHU
int
int
int
nvarchar(100)
nvarchar(Max)
nvarchar(200)
DA TRAC NGHIEM
ID DA TN
ID_TN
DAP AN
DAP AN DUNG
GHI CHU
int
int
nvarchar(1000)
int
varchar(200)
CHUONG
ID CHUONG
MA MON HOC
TEN CHUONG
Y NGHIA CHUONG
GHI CHU
int
varchar(20)
nvarchar(100)
nvarchar(100)
nvarchar(100)
TU KHOA
ID_TU KHOA
TENTUKHOA
MO TA
GHI CHU
int
nvarchar(200)
nvarchar(1000)
nvarchar(200)
SO KHOP
ID SO KHOP
ID CHU DE
PHANDAU CH
PHAN CUOI CH
GHI CHU
int
int
nvarchar(1000)
nvarchar(Max)
nvarchar(200)
MONHOC
MA MON HOC
TEN MON HOC
GHI CHU
varchar(20)
nvarchar(50)
nvarchar(200)
DIEUKIEN
IDYCHINH
IDYCHINHTQ
TRONGSO
int
int
int
DIENKHUYET
ID DK
ID CHU DE
MUCDOKHO
PHANDAU CH
PHAN CUOI CH
GHI CHU
int
int
int
nvarchar(1000)
nvarchar(1000)
nvarchar(200)
DAPAN_DIENKHUYET
ID DA DK
ID DK
DAP AN
DAP AN DUNG
GHI CHU
int
int
nvarchar(1000)
int
nvarchar(200)
TRAC NGHIEM
ID_TN
ID CHU DE
MUCDOKHO
CAU HOI
GHI CHU
int
int
int
nvarchar(1000)
nvarchar(200)
DIEN KHUYET CODE
ID DK CODE
ID CHU DE
MUCDOKHO
MANCHOI
CAU HOI
GHI CHU
int
int
int
int
nvarchar(1000)
nvarchar(200)
DA DK CODE
ID DA DK CODE
ID DK CODE
DAP AN
VI TRI
GHI CHU
int
int
nvarchar(1000)
int
nvarchar(200)
LAP GHEP
ID LAP GHEP
ID CHU DE
MUCDOKHO
MANCHOI
CAU HOI
GHI CHU
int
int
int
int
nvarchar(1000)
nvarchar(200)
DA LAP GHEP
ID_DA_LG
ID LAP GHEP
CAU LENH
VI TRI
GHI CHU
int
int
nvarchar(1000)
int
nvarchar(200)
Y CHINH TU KHOA
ID_TU KHOA
ID Y CHINH
int
int
50 
 Danh sách các bảng biểu 
Tên Code Ghi chú 
CHU DE CHUDE Chủ đề 
CHU DE Y CHINH CHUDEYCHINH Chủ đề - ý chính 
CHUONG CHUONG Chƣơng 
DA DK CODE DADKCODE Đáp án điền khuyết code 
DA LAP GHEP DALAPGHEP Đáp án lắp ghép 
DA TRAC NGHIEM DATRACNGHIEM Đáp án trắc nghiệm 
DAPAN_DK DAPAN_DK Đáp án điền khuyết 
DK CODE DKCODE Điền khuyết code 
DIENKHUYET DIENKHUYET Điền khuyết 
DIEUKIEN DIEUKIEN Điều kiện 
LAP GHEP LAPGHEP Lắp ghép 
MONHOC MONHOC Môn học 
SO KHOP SOKHOP So khớp 
TRAC NGHIEM TRACNGHIEM Trắc nghiệm 
TU KHOA TUKHOA Từ khóa 
Y CHINH YCHINH Ý chính 
Y CHINH TU KHOA YCHINHTUKHOA Ý chính từ khóa 
51 
 Mô tả chi tiết các table 
o Table CHUDE 
Tên Code P M Ghi chú 
ID CHU DE IDCHUDE X X ID chủ đề 
ID CHUONG IDCHUONG X ID chƣơng 
TEN CHU DE TENCHUDE X Tên chủ đề 
DO KHO DOKHO X Độ khó 
TLDK TLDK Thời gian dự kiến 
GHI CHU GHICHU Ghi chú 
o Table CHUDEYCHINH 
Tên Code P M Ghi chú 
ID CD YC IDCDYC X X ID Chủ đề yêu cầu 
ID CHU DE IDCHUDE X ID chủ đề 
ID Y CHINH IDYCHINH X ID ý chính 
TEN CD_YC TENCDYC X Tên chủ đề ý chính 
MO TA MOTA X Mô tả 
GHI CHU GHICHU Ghi chú 
o Table Chƣơng 
Tên Code P M Ghi chú 
ID CHUONG IDCHUONG X X ID chƣơng 
MA MON HOC MAMONHOC X Mã môn học 
TEN CHUONG TENCHUONG X Tên chƣơng 
Y NGHIA CHUONG YNGHIACHUONG X Ý nghĩa chƣơng 
GHI CHU GHICHUCHUONG Ghi chú 
52 
o Table DADKCODE 
Tên Code P M Ghi chú 
ID DA DK CODE IDDADKCODE X X 
ID đáp án điền khuyết 
code 
ID DK CODE IDDKCODE X ID điền khuyết code 
DAP AN DAPAN X Đáp án 
VI TRI VITRI X Vị trí 
GHI CHU GHICHU Ghi chú 
o Table LAPGHEP 
Tên Code P M Ghi chú 
ID_DA_LG IDDALG X X ID đáp án lắp ghép 
ID LAP GHEP IDLAPGHEP X ID lắp ghép 
CAU LENH CAULENH X Câu lệnh 
VI TRI VITRI X Vị trí 
GHI CHU GHICHU Ghi chú 
o Table DALAPGHEP 
Tên Code P M Ghi chú 
ID_DA_LG IDDALG X X Id đáp án lắp ghép 
ID LAP GHEP IDLAPGHEP X Id lắp ghép 
CAU LENH CAULENH X Câu lệnh 
VI TRI VITRI X Vị trí 
GHI CHU GHICHU Ghi chú 
53 
o Table DATRACNGHIEM 
Tên Code P M Ghi chú 
ID DA TN IDDAMC X X Id đáp án trắc nghiệm 
ID_TN IDTN X Id trắc nghiệm 
DAP AN DAPAN X Đáp án 
DAP AN DUNG DAPANDUNG X Đáp án đúng 
GHI CHU GHICHU Ghi chú 
o Table DADIENKHUYET 
Tên Code P M Ghi chú 
ID DA TN IDDATN X X Id đáp án trắc nghiệm 
ID_TN IDTN X Id trắc nghiệm 
DAP AN DAPAN X Đáp án 
DAP AN DUNG DAPANDUNG X Đáp án đúng 
GHI CHU GHICHU Ghi chú 
o Table DKCODE 
Tên Code P M Ghi chú 
ID DK CODE IDDKCODE X X Id điền khuyết code 
ID CHU DE IDCHUDE X Id chủ đề 
MUCDOKHO MUCDOKHO X Mức độ khó 
MANCHOI MANCHOI X Màn chơi 
CAU HOI CAUHOI X Câu hỏi 
GHI CHU GHICHU Ghi chú 
54 
o Table DIENKHUYET 
Tên Code P M Ghi chú 
ID DK IDDIENKHUYET X X Id điền khuyết 
ID CHU DE IDCHUDE X Id chủ đề 
MUCDOKHO MUCDOKHO X Mức độ khó 
PHANDAU CH PHANDAUCH Phần đầu câu hỏi 
PHAN CUOI CH PHANCUOICH Phần cuối câu hỏi 
GHI CHU GHICHU Ghi chú 
o Table DIEUKIEN 
Tên Code P M Ghi chú 
IDYCHINH YCH_IDYCHINH X X Id tùy chỉnh 
IDYCHINHTQ IDYCHINHTQ X X Id ý chính tiên quyết 
TRONGSO TRONGSO X Trọng số 
o Table LAPGHEP 
Tên Code P M Ghi chú 
ID LAP GHEP IDLAPGHEP X X Id lắp ghép 
ID CHU DE IDCHUDE X Id chủ đề 
MUCDOKHO MUCDOKHO X Mức độ khó 
MANCHOI MANCHOI X Màn chơi 
CAU HOI CAUHOI X Câu hỏi 
GHI CHU GHICHU Ghi chú 
55 
o Table MONHOC 
Tên Code P M Ghi chú 
MA MON HOC MAMONHOC X X Mã môn học 
TEN MON HOC TENMONHOC X Tên môn học 
GHI CHU GHICHU Ghi chú 
o Table SOKHOP 
Tên Code P M Ghi chú 
ID SO KHOP ID_SO_KHOP X X Id so khớp 
ID CHU DE IDCHUDE X Id chủ đề 
PHANDAU CH PHANDAUCH X Phần đầu câu hỏi 
PHAN CUOI CH PHANCUOICH X Phần cuối câu hỏi 
GHI CHU GHICHU Ghi chú 
o Table TRACNGHIEM 
Tên Code P M Ghi chú 
ID SO KHOP ID_SO_KHOP X X Id so khớp 
ID CHU DE IDCHUDE X Id chủ đề 
PHANDAU CH PHANDAUCH X Phần đầu câu hỏi 
PHAN CUOI CH PHANCUOICH X Phần cuối câu hỏi 
GHI CHU GHICHU Ghi chú 
56 
o Table TUKHOA 
Tên Code P M Ghi chú 
ID_TU KHOA IDTUKHOA X X Id từ khóa 
TENTUKHOA TENTUKHOA X Tên từ khóa 
MO TA MOTA X Mô tả 
GHI CHU GHICHU Ghi chú 
o Table YCHINH 
Tên Code P M Ghi chú 
ID Y CHINH IDYCHINH X X Id ý chính 
TEN Y CHINH TENYCHINH X Tên ý chính 
DO QUAN TRONG DOQUANTRONG X Độ quan trọng 
GHI CHU GHICHU Ghi chú 
o Table TUKHOAYCHINH 
Tên Code P M Ghi chú 
ID TU KHOA IDTUKHOA X X Id từ khóa 
ID Y CHINH IDYCHINH X X Id ý chính 
57 
 Thiết kế xử lý 
 Sơ đồ xử lý 
Hình 2.17 – Sơ đồ xử lý của chƣơng trình 
58 
 Hàm xử lý 
TÊN HÀM INPUT OUTPUT Ý NGHĨA 
TaoNgauNhien(); 
Tổng số câu 
hỏi cần load 
Mảng bộ 
câu hỏi 
Dùng để tạo bộ câu 
hỏi ngẫu nhiên 
trong số các câu hỏi 
lấy lên từ file dữ 
liệu XML 
ThoiGian() ; Thời gian (số) 
Bộ đếm thời 
gian ngƣợc 
Dùng để tạo ra bộ 
đếm thời gian 
ngƣợc quy định thời 
gian cho phép của 
một trò chơi 
LoadCauHoi() ; Bộ dữ liệu 
Dữ liệu 
đƣợc gán 
Dùng để load dữ 
liệu tự file xml lên 
đối tƣờng cần lấy 
dữ liệu. 
KiemTra(); 
Dữ liệu cần 
kiểm tra 
Đúng (true) 
hoặc Sai 
(false) 
Dùng để kiểm tra 
kết quả sau khi 
ngƣời chơi chọn 
đáp án 
ThongBaoKetQua() 
Kết quả ngƣời 
chơi sau khi 
trả lời 
Hộp thoại 
thông báo 
kết quả của 
ngƣời chơi 
Dùng để thông báo 
kết quả của ngƣời 
chơi sau khi chơi 
xong 1 màn 
59 
fl_ClickToDrag(event:MouseEvent); 
fl_ReleaseToDrop(event:MouseEvent); 
Đối tƣợng cần 
di chuyển 
Đối tƣợng 
đƣợc di 
chuyển 
Dùng để kéo thả một 
đối tƣợng (di chuyển 
vị trí của đối tƣợng) 
fl_ClickToBringToFront(event:Mouse
Event); 
Đối tƣợng cần 
di chuyển lên 
layer trên 
cùng 
Đối tƣợng 
đƣợc chuyển 
lên layer 
trên cùng 
Dùng để tạo sự kiện di 
chuyển đối tƣợng lên 
trên layer trên cùng 
(nằm trên các đối 
tƣợng khác) 
updateTimeNV(e:TimeEvent) 
Số (integer) – 
mỗi số tƣợng 
trƣng cho 1 
nhân vật 
Thứ tự xuất 
hiện của các 
nhân vật 
Dùng để xuất ngẫu 
nhiên các chú Tí 
updateTimeLenh(e:TimeEvent) 
Số (integer) – 
mỗi số tƣợng 
trƣng cho 1 
lệnh 
Trình tự 
chạy của các 
lệnh 
Dùng để gọi thứ tự 
chạy của các lệnh 
updateTimeSDK(e:TimeEvent) 
Số (integer) – 
mỗi số tƣợng 
trƣng cho 1 
hình trên sơ 
đồ khối 
Trình tự 
xuất hiện 
của các hình 
trên sơ đồ 
khối 
Dùng để hiển thị ngẫu 
nhiên các hình trên sơ 
đồ khối 
60 
ClickToDragSDK(event:MouseEvent); 
ReleaseToDropSDK(event:MouseEvent
); 
Đối tƣợng cần 
di chuyển 
Đối tƣợng 
đƣợc di 
chuyển 
Dùng để kéo thả một 
đối tƣợng (di chuyển 
vị trí của đối tƣợng) 
trên sơ đồ khối 
Refresh(); 
Tọa độ của 
các hình trên 
sơ đồ khối 
trƣớc khi di 
chuyển 
Thứ tự của 
các hình trên 
sơ đồ khối 
ban đầu 
Dùng để đƣa các hình 
trên sơ đồ khối trở về 
vị trí ban đầu 
61 
 Thiết kế giao diện 
o Sơ đồ các màn hình trong trò chơi 
Hình 2.18 – Sơ đồ các màn hình trong trò chơi 
62 
o Màn hình chính 
 Mô phỏng hình thức thể hiện 
Hình 2.19 – Giao diện màn hình chính ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả màn hình chính 
1 
Chọn để đi vào game Cú Pháp Câu Lệnh – Kiểm tra về mặt lý thuyết các cú 
pháp câu lệnh trong Pascal 
2 
Chọn để đi vào game Hoàn chỉnh chƣơng trình – Điền các phần còn trống 
trong đoạn lệnh để hoàn chỉnh chƣơng trình 
3 
Chọn để đi vào game Lắp ghép – Sắp xếp các câu lệnh riêng lẻ để tạo thành 
một đoạn chƣơng trình hoặc một thuật toán 
4 Chọn để đi vào game Mô Phỏng Thuật Toán – Mô phỏng một số thuật toán 
5 Màn hình chính – Để quay lại màn hình chính 
63 
o Màn hình Game 1 – Cú Pháp Câu Lệnh: Màn 1 – Trắc Nghiệm 
 Mô phỏng hình thức thể hiện 
Hình 2.20 – Giao diện màn hình game 1 – cú pháp câu lệnh – màn 1 ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả 
1 Hiển thị câu hỏi dạng trắc nghiệm 
2 Nút lệnh chọn đáp án – Ngƣời chơi nhấn chuột vào 1 trong 4 nút 
lệnh này để trả lời câu hỏi 
3 Khung hiển thị đáp án 
4 Thời gian 
5 Nút lệnh Tùy Chọn – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game và tùy chọn một số chức năng nhƣ tắt mở nhạc, xem hƣớng 
dẫn chơi, chọn nhân vật, khởi động lại game hoặc quay về màn hình 
chính 
6 Nút lệnh Trợ Giúp – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game game và xem trợ giúp về kiến thức 
64 
o Màn hình Game 1 – Cú Pháp Câu Lệnh: Màn 2 – Điền Khuyết 
 Mô phỏng hình thức thể hiện 
Hình 2.21 – Giao diện màn hình game 1 – cú pháp câu lệnh – màn 2 ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả 
1 Hiển thị câu hỏi dạng điền khuyết 
2 Khung hiển thị đáp án – Ngƣời chơi trả lời câu hỏi bằng cách kéo thả 1 
trong 4 đáp án vào phần khuyết của câu hỏi 
3 Thời gian 
4 Nút lệnh Tùy Chọn – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game và tùy chọn một số chức năng nhƣ tắt mở nhạc, xem hƣớng dẫn 
chơi, chọn nhân vật, khởi động lại game hoặc quay về màn hình chính 
5 Nút lệnh Trợ Giúp – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game game và xem trợ giúp về kiến thức 
6 Nút lệnh Tiếp – Dùng để di chuyển qua câu hỏi kế tiếp 
65 
o Màn hình Game 1 – Cú Pháp Câu Lệnh: Màn 3: So Khớp 
 Mô phỏng hình thức thể hiện 
Hình 2.22- Giao diện màn hình game 1 – cú pháp câu lệnh – màn 3 ở mức phân tích 
 Mô phỏng ý nghĩa các control 
STT Mô tả 
1 Hiển thị phần đầu của câu hỏi 
2 Hiển thị phần cuối của câu hỏi. Ngƣời chơi trả lời bằng cách kéo thả 
phần cuối vào phần đầu 
3 Thời gian 
4 Nút lệnh Tùy Chọn – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game và tùy chọn một số chức năng nhƣ tắt mở nhạc, xem hƣớng dẫn 
chơi, chọn nhân vật, khởi động lại game hoặc quay về màn hình chính 
5 Nút lệnh Trợ Giúp – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game game và xem trợ giúp về kiến thức 
6 Nút lệnh Tiếp – Dùng để di chuyển qua bộ câu hỏi kế tiếp 
66 
o Màn hình Game 2 – Hoàn Chỉnh Chƣơng Trình 
 Mô phỏng hình thức thể hiện 
Hình 2.23 – Giao diện màn hình game 2 – hoàn chỉnh chƣơng trình ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả 
1 Hiển thị đoạn code (còn khuyết) 
2 Hiển thị các đáp án để điền vào chỗ khuyết 
3 Nơi trả lời câu hỏi: Kéo thả 2 vào 3 
4 Thời gian 
5 Nút lệnh Tùy Chọn – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game và tùy chọn một số chức năng nhƣ tắt mở nhạc, xem hƣớng dẫn 
chơi, chọn nhân vật, khởi động lại game hoặc quay về màn hình chính 
6 Nút lệnh Trợ Giúp – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game game và xem trợ giúp về kiến thức 
7 Nút lệnh Tiếp – Dùng để di chuyển qua bộ câu hỏi kế tiếp 
67 
o Màn hình Game 3 – Lắp ghép 
 Mô phỏng hình thức thể hiện 
Hình 2.24 – Giao diện màn hình game 3 – Lắp ghép ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả 
1 Hiển thị các câu lệnh theo thứ tự ngẫu nhiên 
2 Hiển thị các chỗ trống để kéo thả 1 vào và sắp xếp thành 1 đoạn code 
3 Thời gian 
4 Nút lệnh Tùy Chọn – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game và tùy chọn một số chức năng nhƣ tắt mở nhạc, xem hƣớng dẫn 
chơi, chọn nhân vật, khởi động lại game hoặc quay về màn hình chính 
5 Nút lệnh Trợ Giúp – Đƣợc sử dụng khi ngƣời chơi muốn tạm dừng 
game game và xem trợ giúp về kiến thức 
6 Nút lệnh Tiếp – Dùng để di chuyển qua bộ câu hỏi kế tiếp 
68 
o Màn hình Game 4 – Mô Phỏng Thuật Toán 
 Mô phỏng hình thức thể hiện 
Hình 2.25 – Giao diện màn hình game 4 – Mô phỏng thuật toán ở mức phân tích 
 Mô tả ý nghĩa các control 
STT Mô tả 
1 Hiển thị đoạn code hoàn chỉnh 
2 Sơ đồ khối thể hiện cho đoạn code 
3 Nút lệnh Ý Tƣởng Thuật Toán – Để ngƣời chơi xem ý tƣởng của bài 
toán 
4 Nút lệnh Bắt đầu – Để ngƣời chơi có thể nhập dữ liệu, xem mô 
phỏng từng bƣớc 
5 Nút lệnh Tạo Sơ Đồ Khối – Để ngƣời chơi tự xây dựng sơ đồ khối 
dựa trên thuật toán 
6 Nút lệnh Trợ giúp – Để ngƣời chơi xem trợ giúp kiến thức khi có 
thắc mắc 
69 
 CHƢƠNG 3 
CÀI ĐẶT VÀ THỬ NGHIỆM 
HỆ THỐNG 
70 
CHƢƠNG III: CÀI ĐẶT VÀ THỬ NGHIỆM HỆ THỐNG 
III.1 Môi trƣờng phát triển 
 Hệ điều hành Window 
 Cơ sở dữ liệu XML 
 Ngôn ngữ lập trình: Flash với công nghệ ActionScript 3.0 
III.2 Một số màn hình và chức năng minh họa 
Hình 3.1 – Sơ đồ thể hiện các màn hình 
71 
III.2.1 Màn hình chọn game mini 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Dùng để ngƣời chơi chọn một trong bốn game mini:Cú pháp câu lệnh, Hoàn 
chỉnh chƣơng trình, Lắp ghép, Mô phỏng thuật toán 
 Ý nghĩa các control , Sơ đồ mô tả các tình huống sử dụng 
72 
III.2.2 Màn hình Game 1 – Cú Pháp Câu Lệnh – Màn 1 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Cú Pháp Câu Lệnh – Màn 1, ngƣời chơi trả lời các câu 
hỏi ở dạng trắc nghiệm để học các kiến thức về cú pháp câu lệnh trong ngôn 
ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả các tình huống thể hiện 
73 
III.2.3 Màn hình game 1- Cú Pháp Câu Lệnh – Màn 2 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Cú Pháp Câu Lệnh – Màn 2, ngƣời chơi trả lời các câu 
hỏi ở dạng điền khuyết (kéo thả các đáp án) để học các kiến thức về cú pháp 
câu lệnh trong ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả các tình huống thể hiện 
74 
III.2.4 Màn hình game 1- Cú Pháp Câu Lệnh – Màn 3: So khớp 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Cú Pháp Câu Lệnh – Màn 3, ngƣời chơi trả lời các câu 
hỏi ở dạng so khớp (kéo thả các đáp án so khớp) để học các kiến thức về cú 
pháp câu lệnh trong ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả các tình huống thể hiện 
75 
III.2.5 Màn hình Game 2 – Hoàn chỉnh chƣơng trình - Màn 1 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Hoàn chỉnh chƣơng trình, ngƣời chơi trả lời các câu hỏi ở 
dạng điền đáp án còn thiếu của đoạn code (2 vị trí khuyết, 2 đáp án điền khuyết). 
Từ đó ngƣời chơi học đƣợc kiến thức trong bài tập ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
76 
III.2.6 Màn hình Game 2 – Hoàn chỉnh chƣơng trình – Màn 2 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Hoàn chỉnh chƣơng trình, ngƣời chơi trả lời các câu hỏi ở 
dạng điền đáp án còn thiếu của đoạn code (2 vị trí khuyết, 3 đáp án điền khuyết). 
Từ đó ngƣời chơi học đƣợc kiến thức trong bài tập ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
77 
III.2.7 Màn hình Game 2 – Hoàn chỉnh chƣơng trình – Màn 3 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game Hoàn chỉnh chƣơng trình, ngƣời chơi trả lời các câu hỏi ở 
dạng điền đáp án còn thiếu của đoạn code (2 vị trí khuyết, 4 đáp án điền khuyết). 
Từ đó ngƣời chơi học đƣợc kiến thức trong bài tập ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
78 
III.2.8 Màn hình Game 3 – Lắp Ghép 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện game 3 - Lắp ghép, ngƣời chơi trả lời các câu hỏi ở dạng sắp 
xếp các câu lệnh thành một đoạn code hoàn chỉnh theo yêu cầu của đề bài. 
Từ đó ngƣời chơi học đƣợc kiến thức trong bài tập ngôn ngữ lập trình Pascal. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
79 
III.2.9 Màn hình game 4 – Mô phỏng thuật toán 
a. Màn hình chức năng Sơ đồ khối – Xem mô phỏng 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Là giao diện màn hình mô phỏng thuật toán: Ngƣời chơi có thể xem sơ đồ khối, 
nhập dữ liệu, xem mô phỏng từng bƣớc, xây dựng lại thuật toán. Sau khi chơi xong 
trò chơi này ngƣời chơi có một kiến thức nhất định về thuật toán trong Pascal 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
80 
b. Màn hình chức năng Sơ đồ khối – Xây dựng lại 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Ngƣời chơi kéo thả các khối hình bên phải ghép vào bên trái để tạo thành 
sơ đồ đúng. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
81 
c. Màn hình chức năng Sơ đồ khối – Kiểm tra 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Dùng để ngƣời chơi kiểm tra có bao nhiêu khối hình đƣợc kéo thả đúng vị trí 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
82 
d. Màn hình chức năng Thuật toán – Xem mô phỏng 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Dùng để ngƣời chơi xem mô phỏng dƣới dạng đoạn code. 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
83 
e. Màn hình Game 4 – Mô phỏng thuật toán – Tùy chọn 
 Hình thức thể hiện 
 Ý nghĩa màn hình 
Dùng để ngƣời chơi thao tác với một số tùy chọn nhƣ xem ý tƣởng, bắt đầu 
lại, quay về màn hình chính, tùy chỉnh tốc độ chạy 
 Ý nghĩa các control, sơ đồ mô tả tình huống 
Xem ý tƣởng của 
thuật toán 
Quay lại màn hình 
chọn thuật toán 
Quay lại màn hình 
chính 
Tùy chỉnh tốc độ 
Bắt 
đầu lại
MH Tùy 
Chọn
Ý 
tưởng
MH 
chính
MH chọn thuật 
toán MH chính
Xem ý 
tưởng
84 
III.2.10 Hộp thoại Tùy Chọn 
 Hình thức thể hiện 
 Ý nghĩa hộp thoại 
Cho phép ngƣời chơi có thể thao tác với một số chức năng của hộp thoại tùy chọn: tùy 
chỉnh nhạc, chọn nhân vật, bắt đầu lại, hƣớng dẫn, màn hình chính. 
 Ý nghĩa các control, Sơ đồ mô tả tình huống sử dụng 
Chọn 
NV
Bắt 
đầu lại
MH Tùy 
Chọn
Hướng 
dẫn
MH 
chính
Đóng
Hộp thoại 
chọn nhân vật
MH game với câu 
hỏi khác MH chính
Hộp thoại 
hướng dẫn
MH game 
đang chơi
85 
III.2.11 Hộp thoại hƣớng dẫn 
 Hình thức thể hiện 
 Ý nghĩa hộp thoại 
Dùng để trợ giúp kiến thức cho ngƣời chơi. Màn hình sẽ hiển thị lên các ý giảng 
chính của topic (topic của câu hỏi) 
 Ý nghĩa các control, sơ đồ mô tả tình huống sử dụng 
MH trợ giúp 
kiến thức
Đóng
MH game đang 
chơi
86 
III.2.12 Màn hình chọn nhân vật 
 Hình thức thể hiện 
 Ý nghĩa hộp thoại 
Màn hình dùng để ngƣời chơi có thể chọn một nhân vật Xì Trum nào mà mình yêu 
thích 
 Ý nghĩa các control, sơ đồ mô tả tình huống sử dung 
STT Nút lệnh Mô tả 
1 
Các chú tí 
MH chọn 
nhân vật
Chọn 
1 chú 
Tí
MH Tùy chọn
87 
III.2.13 Hộp thoại thông báo kết quả 
 Hình thức thể hiện 
 Ý nghĩa hộp thoại 
Thông báo cho ngƣời chơi biết số câu hỏi trả lời đúng và có đủ điều kiện để qua 
màn tiếp theo không. 
 Ý nghĩa các control, sơ đồ mô tả tình huống sử dung 
Chơi lại màn chơi 
Quay về màn hình chính 
Qua màn chơi tiếp theo 
Chơi 
lại
Hộp thoại 
thông báo
Tiếp 
tục
MH 
chính
Màn đang chơi MH chính
Màn chơi 
tiếp theo
88 
 CHƢƠNG IV 
KẾT LUẬN VÀ 
 HƢỚNG PHÁT TRIỂN 
89 
CHƢƠNG IV: KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 
IV.1 Kết luận 
 Sau sáu tháng tìm hiểu, nghiên cứu và xây dựng, chúng em đã xây dựng 
đƣợc một phần mềm trò chơi “VUI HỌC PASCAL” giúp cho ngƣời chơi có thể tự 
học, tự ôn luyện ngôn ngữ lập trình Pascal. Phần mềm này đƣợc xây dựng trên công 
nghệ Flash với ActionScript đã đạt đƣợc những kết quả sau 
- Xây dựng đƣợc phần mềm tƣơng đối hoàn chỉnh cho phép ngƣời chơi có thể 
tự học, ôn tập kiến thức ngôn ngữ lập trình Pascal thông qua hệ thống câu 
hỏi dƣới nhiều dạng: trắc nghiệm, điền khuyết, so khớp, lắp ghép, xây dựng 
thuật toán, xem mô phỏng 
- Ngƣời chơi có thể sử dụng trò chơi này để vừa học vừa chơi ngôn ngữ lập 
trình Pascal, hệ thống có thể giúp đỡ ngƣời chơi khi gặp khó khăn về kiến 
thức dựa vào mô hình KG 
Mặc dù đã nỗ lực và cố gắng rất nhiều nhƣng do thời gian và khả năng chƣa cho 
phép nên đề tài còn một số hạn chế: 
- Số thuật toán đƣợc mô phỏng trong chƣơng trình còn ít. 
- Hệ thống câu hỏi, bài tập trong cơ sở dữ liệu còn hạn chế 
IV.2 Hƣớng phát triển 
Từ những hạn chế trên, chúng em đƣa ra những giải pháp sau 
- Xây dựng hệ thống câu hỏi, bài tập đƣợc phong phú hơn 
TÀI LIỆU THAM KHẢO 
Tiếng Anh: 
[1] Satoshi Amagai et al (2005), Summit on educational games, Federation 
of American Scientists. 
[2]Allyn & BaconRoger B. Myerson (1991), Game Theory: Analysis of 
Conflict, Harvard University Press, p.1 
90 
[3] Le, D.-L (2008), Toward a supporting system for e-Learning 
environment. In Addendum Contributions to the 2008 IEEE International 
Conference on Research, Innovation and Vision for the Future (RIVF‟08), 
Doctoral Symposium session, July 2008, Hochiminh city, Vietnam. (in 
English), pp 200-203 
[4] Le, D.-L, Nguyen, D.-T, Nguyen, A.-T, Tran, V.-H, Hunger, A. (2010), 
Applying Pedagogical Analyses to Create an On-line Course for e 
Learning. In Lecture Notes in AI (LNAI 6277) from the 14th International 
Conference on Knowledge-Based and Intelligent Information & Engineering 
Systems (KES 2010) published by Springer-Verlag Berlin Heidelberg, 8-
10th Sep 2010, Cardiff, Wales, UK (in English), Part II, pp 114-123 
[5] Le, D.-L, Nguyen, D.-T, Nguyen, A.-T, Tran, V.-H, Hunger, A. (2011), 
Pedagogical domain knowledge for Adaptive e-Learning. In the Science 
and Technology Development Journal of VNU-HCM - Natural Sciences: 
Mathematics & Information Technology - Vol. 14 (T1-2011) - ISSN 1859-
0128, Hochiminh city Vietnam (in English), pp 14-34 
[6] Leonard, Robert. Von Neumann, Morgenstern (2010), The Creation of 
Game Theory, Cambridge University Press. 
[7]Margaret D.Roblyer & Aron H.Doering (2010), Integrating Educational 
Technology into Teaching – Fifth edition. 
[8]Marc Prensky (2001), Digital Game –Based learning. 
 [9] Pavel Zemliansky & Diane Wilcox (2010), Design and Implementation 
of Educational Games,Information science reference, pp. 108 – 125. 
Website tham khảo: 
[10]
ml 
[11]  
[12] 
[13] 
91 
[14]
City-4-Deluxe. 
[15] 
[16] 
            Các file đính kèm theo tài liệu này:
xay_dung_phan_mem_vui_hoc_lap_trinh_pascal_7019.pdf