Lập trình trò chơi là một cách thú vị để học bất kỳ ngôn ngữ lập trình nào. Trong hướng dẫn này, chúng ta sẽ học cách viết mã một trò chơi Búa, Bao và Kéo đơn giản
Quy tắc thắng trong trò oẳn tù tì và kéo như sau
- Đá vs giấy-> giấy thắng
- Rock vs scissor-> Rock thắng
- giấy vs kéo-> cắt kéo thắng
Mã nguồn Rock, Paper và Kéo
Đây là mã hoàn chỉnh cho dự án, bạn có thể chạy và xem nó hoạt động như thế nào
Để làm cho đoạn mã trên chạy đi chạy lại trong một vòng lặp, hãy thêm đoạn mã sau vào cuối mã vòng lặp while
trong đoạn mã trên. Đoạn code bên dưới sẽ hỏi người dùng sau 1 ván có muốn chơi tiếp không và nếu người dùng nhập y thì game sẽ khởi động lại
Bạn có thể thử mã này trong máy tính xách tay của mình cục bộ và chơi lại trò chơi
ch = input["do you wish to continue[y/n]"] #choice for continuing loop
if ch=="y":
player_choice=1
else:
break
Để hiểu luồng, mã đã được chia thành các nội dung sau-
1. Gán lựa chọn cho máy tính
t = ["Rock", "Paper", "Scissors"]
#random choice for computer
comp_choice = t[randint[0,2]]
Nhập mô-đun ngẫu nhiên để sử dụng hàm randomint[]. Chúng tôi chỉ định một tùy chọn phát cho máy tính. t là danh sách các tùy chọn phát có thể. randomint[0,2] sẽ tạo ngẫu nhiên một số từ phạm vi đã cho mỗi khi nó được gọi. Nó có thể cho 0,1 hoặc 2 theo mã của chúng tôi
comp_choice sẽ lưu trữ giá trị dưới dạng
t[0] = "Đá"
t[1]="Giấy"
t[2]="Cái kéo"
2. Lấy đầu vào từ người chơi
player_choice = input["Chose Rock, Paper, Scissors?"]
Người chơi sẽ đưa ra một đầu vào của sự lựa chọn của họ
3. Sử dụng vòng lặp while để chơi nhiều vòng
Hãy nhìn vào cơ thể trong khi
?
while player_choice == 1:
#player choses its option
player_choice = input["Chose Rock, Paper, Scissors?"]
comp_choice = t[randint[0,2]]
if player_choice == comp_choice:
print["Tie!"]
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
elif player_choice == "Rock":
if comp_choice == "Paper":
print["You lose! computer chose", comp_choice, "player chose", player_choice]
computer_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
else:
print["You win! player chose", player_choice, "computer chose", comp_choice]
player_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
elif player_choice == "Paper":
if comp_choice == "Scissors":
print["You lose! computer chose", comp_choice, "player chose", player_choice]
computer_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
else:
print["You win! player chose", player_choice, "computer chose", comp_choice]
player_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
elif player_choice == "Scissors":
if comp_choice == "Rock":
print["You lose computer chose", comp_choice, "player chose", player_choice]
computer_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
else:
print["You win! player chose", player_choice, "computer chose", comp_choice]
player_win+=1
print["Score"]
print["computer win:",computer_win]
print["player win:",player_win]
else:
print["That's not a valid play. Check your spelling!"]
print[""]
ch=input["do you wish to continue[y/n]"] #choice for continuing loop
if ch=="y":
player_choice=1
else:
break
Khi vòng lặp bắt đầu, lựa chọn của người chơi và lựa chọn của máy tính được so sánh và ai thắng sẽ được điểm
4. Điểm số hiển thị
computer_win=0
player_win=0
player_win và computer_win được khởi tạo ở 0. Các biến này sẽ lưu trữ điểm số
5. Tùy chọn để chơi lại hoặc thoát
ch=input["do you wish to continue[y/n]"] #choice for continuing loop
if ch=="y":
player_choice=1
comp_choice = t[randint[0,2]]
else:
break
Người chơi được lựa chọn tiếp tục hoặc rời đi. Lựa chọn của người chơi được lưu trữ trong một biến ch. Nếu là 'y' thì player_choice được đặt thành 1 để tiếp tục vòng lặp, nếu không, điều khiển sẽ thực hiện ngắt và ra khỏi vòng lặp
Đầu ra-
Ở đây chúng tôi đã chơi bốn vòng với máy tính. Sau mỗi vòng, điểm số được in cho người chơi và máy tính