Lịch học Tài liệu Bài tập - INT 2202 Lập trình nâng cao. Nhóm 3 và nhóm 5 Lec3 Hangman.b

38 252 1
Lịch học Tài liệu Bài tập - INT 2202 Lập trình nâng cao. Nhóm 3 và nhóm 5 Lec3 Hangman.b

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Lịch học Tài liệu Bài tập - INT 2202 Lập trình nâng cao. Nhóm 3 và nhóm 5 Lec3 Hangman.b tài liệu, giáo án, bài giảng ,...

Game: Hangman - Phát triển chương trình https://github.com/tqlong/advprogram Nội dung ● Trò chơi Hangman ● Sơ đồ khối, mã giả tư tưởng chia để trị ○ Hình dung thành phần chương trình ● Kỹ thuật: ○ Thao tác với xâu ký tự C++ ○ Bắt đầu với hàm đơn giản, biến đổi ln có chương trình chạy Cùng chơi Hangman ● Trò chơi bạn bè tiếng ○ http://www.manythings.org/hmf/ ● Luyện từ vựng tiếng Anh Đối với ngườ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 trò chơi (game logic) ● Vẽ hình đơn giản (text) Hangman: Luật chơi ● Trò chơi A (chủ trò) B (người chơi) ● A nghĩ từ tiếng Anh giấu ○ secretWord: Số vạch = số chữ từ ● B tìm cách đốn từ A ○ Mỗi lần B đoán chữ đúng, A ghi chữ lên vạch tương ứng ○ Nếu B đoán sai, B lượt đoán ● Số lượt ≈ số nét vẽ giá treo thân người 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ẽ vạch (thân người) ● Sai lần 4: Vẽ vạch (tay trái) ● Sai lần 5: Vẽ vạch (tay phải) ● Sai lần 6: Vẽ vạch (chân trái) ● Sai lần 7: Vẽ vạch (chân phải) Đủ thân người → thua Ví dụ ván chơi E HANGMAN C V | | | | | - | | | | | | - | | | O | | | | | | | O | /|\ | | - G secretWord −−−−−−− A secretWord −A−−−A− N P secretWord −AN−−AN H I secretWord HAN−−AN V secretWord HANG−AN F | | | O | /|\ | / \ | - | | | O | | | - | | | O | /| | | | | | O | /|\ | / | - Lập trình trò chơi Hangman Hãy lập trình trò chơi Hangman với máy chủ trò Cần hình dung tác vụ chương trình trước lập trình cụ thể ● ● ● ● ● Khởi tạo: máy nghĩ từ tiếng Anh, số đếm lần đoán sai, Nhập liệu: phán đoán người chơi Cập nhật: xử lý phán đoán thay đổi trạng thái trò chơi Hiển thị trạng thái trò chơi: người giá treo secretWord Thơng báo kết trò chơi Sơ đồ khối - quan hệ tác vụ Khởi tạo (initialize) - Chọn từ tiếng Anh - Số đếm lần đoán sai - Từ đoán Nhập liệu (input) ● Phán đoán người chơi Hiển thị (render) - Giá treo cổ - Từ đoán false điều kiện dừng Game loop Cập nhật trạng thái (update) ● từ đoán ● số lần đốn sai true Thơng báo kết Đọc thêm: http://gameprogrammingpatterns.com/game-loop.html Mã giả Initialize choose word; initialize guessedWord with ‘-’; badGuessCount = 0; Render Input false Game Over true { render game; End game char guess = readAGuess; if (word contains guess) update guessedWord; else badGuessCount++; } while (game not over); display game result; Update game string word = chooseWord(); string guessedWord = string(word.length(), '-'); int badGuessCount = 0; Code { renderGame(guessedWord, badGuessCount); char guess = readAGuess(); if (contains(word, guess)) guessedWord = update(guessedWord, word, guess); else badGuessCount++; } while (badGuessCount < && word != guessedWord); renderGame(guessedWord, badGuessCount); if (badGuessCount < 7) cout

Ngày đăng: 02/12/2017, 11:38

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan