
Bài giảng Lập trình nâng cao - Chương 3: Game Hangman (Phát triển chương trình)
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình nâng cao - Chương 3: Game Hangman (Phát triển chương trình)Game: Hangman3 - Phát triển chương trìnhhttps://github.com/tqlong/advprogramNội dung● Trò chơi Hangman● Sơ đồ khối, mã giả và tư tưởng chia để trị ○ Hình dung các thành phần của chương trình● Kỹ thuật: ○ Thao tác với xâu ký tự trong C++ ○ Bắt đầu với hàm đơn giản, dần dần biến đổi và luôn có chương trình chạy đượcCùng chơi Hangman● Trò chơi giữa bạn bè nổi tiếng ○ http://www.manythings.org/hmf/● Luyện từ vựng tiếng AnhĐối với người mới lập trình● Mô-đun hóa chương trình● Thao tác với xâu ký tự● Xử lý logic của trò chơi (game logic)● Vẽ hình đơn giản (text)Hangman: Luật chơi● Trò chơi giữa A (chủ trò) và B (người chơi)● A nghĩ ra một từ tiếng Anh nhưng giấu ○ secretWord: Số vạch = số chữ cái trong từ● B tìm cách đoán ra từ của A ○ Mỗi lần B đoán 1 chữ cái đúng, A ghi chữ cái đó lên các vạch tương ứng ○ Nếu B đoán sai, B mất 1 lượt đoán● Số lượt ≈ số nét vẽ giá treo và thân người của B (so fun :-D)Hangman: Luật chơi● Sai lần đầu: Vẽ chữ L ngược (giá treo cổ)● Sai lần 2: Vẽ vòng tròn (đầu)● Sai lần 3: Vẽ 1 vạch (thân người)● Sai lần 4: Vẽ 1 vạch (tay trái)● Sai lần 5: Vẽ 1 vạch (tay phải)● Sai lần 6: Vẽ 1 vạch (chân trái)● Sai lần 7: Vẽ 1 vạch (chân phải)Đủ thân người → thua cuộcVí dụ 1 ván chơi E ------------- | | A F ------------- | | HANGMAN | | secretWord | | O | | −A−−−A− | | ----- ----- C ------------- N P ------------- | | | | | O | O | | secretWord | /| | | | −AN−−AN | ----- ----- V ------------- | | H I ------------- | | | O | O ------------- | | /|\ secretWord | /|\ | | / | | | HAN−−AN | | ----- ----- | ----- ------------- G V | | | O | /|\ secretWord secretWord | / \ | −−−−−−− HANG−AN -----Lập trình trò chơi HangmanHãy lập trình trò chơi Hangman với máy làchủ tròCần hình dung các tác vụ của chương trìnhtrước khi lập trình cụ thể● Khởi tạo: máy nghĩ từ tiếng Anh, số đếm lần đoán sai, đúng● Nhập liệu: phán đoán của người chơi● Cập nhật: xử lý phán đoán và thay đổi trạng thái trò chơi● Hiển thị trạng thái trò chơi: người trên giá treo và secretWord● Thông báo kết quả trò chơiSơ đồ khối - quan hệ giữa các tác vụKhởi tạo (initialize) Nhập liệu (input) Hiển thị (render)- Chọn từ tiếng Anh - Giá treo cổ ● Phán đoán- Số đếm lần đoán sai - Từ đã đoán được của người chơi- Từ đã đoán được Game false loop Cập nhật trạng thái (update) điều kiện ● từ đã đoán dừng ● số lần đoán sai true Thông báo kết quả Đọc thêm: http://gameprogrammingpatterns.com/game-loop.html Mã giả Initialize Render Inputchoose word;initialize guessedWord with ‘-’; falsebadGuessCount = 0; Game Update game Overdo { true render game; End game char guess = readAGuess; if (word contains guess) update guessedWord; else badGuessCount++;} while (game not over);display game result;string word = chooseWord(); Codestring guessedWord = strin ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Lập trình nâng cao Lập trình nâng cao Game Hangman Phát triển chương trình Tư tưởng chia để trị Xâu ký tự Xử lý logic trò chơi Lập trình trò chơi HangmanTài liệu có liên quan:
-
142 trang 134 0 0
-
Giáo trình Lập trình nâng cao (Nghề Lập trình máy tính): Phần 2 - Tổng cục dạy nghề
169 trang 94 0 0 -
Đề thi kết thúc học phần Lập trình nâng cao - Học viện Nông nghiệp Việt Nam
1 trang 86 0 0 -
Giáo trình Lập trình nâng cao: Phần 2 - Nguyễn Văn Vinh
153 trang 49 0 0 -
Bài giảng Lập trình nâng cao: Bài 10+11+12 - Trương Xuân Nam
44 trang 40 0 0 -
Lập trình tự động hóa PLC S7-300 với TIA Portal: Phần 2
233 trang 40 0 0 -
Bài giảng Lập trình nâng cao (Advanced Programming) - Chương 7: Con trỏ
56 trang 39 0 0 -
Giáo trình Lập trình nâng cao: Phần 1 - Nguyễn Văn Vinh
126 trang 36 0 0 -
64 trang 31 0 0
-
Giáo trình Cơ sở lập trình: Phần 2
114 trang 31 0 0 -
Ngôn ngữ Pascal - Lập trình nâng cao: Phần 1
109 trang 31 0 0 -
Bài giảng Lập trình nâng cao (Advanced Programming) - Chương 3: Các khai báo, biểu thức, khối lệnh
14 trang 29 0 0 -
Bài giảng Lập trình nâng cao (Advanced Programming) - Chương 9: Kiểu dữ liệu tệp
18 trang 29 0 0 -
Tài liệu học tập môn Tin cơ sở: Phần 2 - Phùng Thị Thu Hiền
80 trang 29 0 0 -
Lập trình tự động hóa PLC S7-1200 với TIA Portal: Phần 2
291 trang 28 0 0 -
Bài giảng Lập trình nâng cao: Bài 8 - Lý Anh Tuấn
40 trang 27 0 0 -
Lập trình khái lược trong C++ - STL (Phần 1)
171 trang 27 0 0 -
107 trang 26 0 0
-
Bài giảng Lập trình nâng cao: Chương 1 - Lý Anh Tuấn
26 trang 25 0 0 -
Bài giảng Lập trình nâng cao (Advanced Programming) - Chương 2: Các kiểu dữ liệu cơ sở
5 trang 25 0 0