Chủ Nhật, 19 tháng 8, 2012

Game đoán số bằng Python

Chào các bạn!
Mình muốn viết 1 game đoán số đơn giản như sau:
- Cho 1 số nguyên ngẫu nhiên nằm trong đoạn từ 1 – 20
- Người chơi sẽ có 6 lần để đoán trúng. Nếu đoán không trúng, người chơi sẽ được gợi ý số vừa đoán nhỏ hơn hay lớn hơn kết quả. Đoán 6 lần mà không trúng thì coi như thua.









Như vậy là luật chơi rất đơn giản, đơn giản để chúng ta có thể bắt đầu dễ dàng được. Code chương trình của mình được viết như ở dưới sau:

#!/usr/bin/python
# Game doan so version 1.0
import random
 
guessesTaken = 0
 
print('Xin chao! Ban ten la gi?')
myName = raw_input()
 
number = random.randint(1,20)
print('Hey, ' + myName + ', to dang nghi 1 con so tu 1 cho den 20')
 
while guessesTaken < 6:
 print('Moi ban doan.')
 guess = input()
 
 guess = int(guess)
 guessesTaken += 1
 
 if guess < number:
  print('Ban doan nho hon roi.')
 elif guess > number:
  print('Ban doan lon hon roi.')
 else: break
 
if guess == number:
 print('Ban doan dung roi! Ban doan mat ' + str(guessesTaken) + " de doan.")
else:
 print('Ban doan sai roi. Con so to dang nghi trong dau la ' + str(number) + " co.")
Các bạn nên type lại đoạn code trên vào 1 file có tên bất kỳ, đừng copy paste vì như vậy không học được cách viết code, ví dụ là guess.py, rồi chạy thử. Mình chạy thử thì nó trông như sau:
MacBooks-MacBook-Pro:Documents MacBookPro$ ./guess.py 
Xin chao! Ban ten la gi?
Cu Hanh
Hey, Cu Hanh, to dang nghi 1 con so tu 1 cho den 20
Moi ban doan.
10
Ban doan lon hon roi.
Moi ban doan.
5
Ban doan nho hon roi.
Moi ban doan.
8
Ban doan lon hon roi.
Moi ban doan.
6
Ban doan nho hon roi.
Moi ban doan.
7
Ban doan dung roi! Ban doan mat 5 de doan.
MacBooks-MacBook-Pro:Documents MacBookPro$
Game này dễ viết và dễ chơi, phải không các bạn!

1 nhận xét:

  1. hàm raw_input() ở Python 2 phải thay bằng input() thì mới chạy được. Thanks for support Admin!

    Trả lờiXóa