aardio和python 猜拳游戏

axuanup 2023-8-13 1466

Code AardioLine:167复制
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.
  • 118.
  • 119.
  • 120.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134.
  • 135.
  • 136.
  • 137.
  • 138.
  • 139.
  • 140.
  • 141.
  • 142.
  • 143.
  • 144.
  • 145.
  • 146.
  • 147.
  • 148.
  • 149.
  • 150.
  • 151.
  • 152.
  • 153.
  • 154.
  • 155.
  • 156.
  • 157.
  • 158.
  • 159.
  • 160.
  • 161.
  • 162.
  • 163.
  • 164.
  • 165.
  • 166.
  • 167.
    • aardio版本
    • import console;
    • /****
    • 项目猜拳游戏
    • 基本规则:
    • 1、用户与计算机出拳,然后判断胜负,显示结果
    • 2、我们用 1表示"剪刀" 2表示“包袱” 3表示“锤头”
    • 3、“剪刀”>"包袱" "包袱" > "锤头" “锤头” > "剪刀"
    • 开发思路:
    • 1、用户先出牌
    • 2、计算机出牌
    • 3、判断胜负
    • 4、【1-3】之间需要进行迭代循环
    • 难点:
    • 1、如何判断计算机与用户谁赢
    • 用户 计算机 胜方
    • ----------------------------
    • 1 1 平手
    • 1 2 用户
    • 1 3 计算机
    • 2 1 计算机
    • 2 2 平手
    • 2 3 用户
    • 3 1 用户
    • 3 2 计算机
    • 3 3 平手
    • ****/
    • // 定义的全局变量
    • var g_userCard = "-1" // 用户牌
    • var g_computerCard = "-1" // 计算机牌
    • var g_winner = "未知" // 胜负
    • // 游戏规则显示
    • var game_tip = function() {
    • console.log("游戏规则显示")
    • console.log("------------- 游戏:不粉不黑面向群编程目标日入一万 -------------")
    • console.log("------------- 1表示剪刀 2表示包袱 3表示锤头 -------------")
    • console.log("------------- 输入“exit” 或“EXIT 退出系统” -------------")
    • }
    • // 用户出牌
    • var send_card_user = function() {
    • return console.getText("请出牌:")
    • }
    • // 计算机出牌
    • var send_card_computer = function() {
    • console.log("计算机出牌")
    • var int_input = tostring(math.random(1, 3)) // 产生随机数
    • return int_input //返回字符串类型
    • }
    • // 判断胜负
    • var judge_winner = function(g_userCard, g_computerCard) {
    • var result = "未知";
    • // 定义返回数值
    • if (g_userCard == "1"
    • and g_computerCard == "1") {
    • result = "平手";
    • }
    • elseif(g_userCard == "1"
    • and g_computerCard == "2") {
    • result = "用户";
    • }
    • elseif(g_userCard == "1"
    • and g_computerCard == "3") {
    • result = "计算机";
    • }
    • elseif(g_userCard == "2"
    • and g_computerCard == "1") {
    • result = "计算机";
    • }
    • elseif(g_userCard == "2"
    • and g_computerCard == "2") {
    • result = "平手";
    • }
    • elseif(g_userCard == "2"
    • and g_computerCard == "3") {
    • result = "用户";
    • }
    • elseif(g_userCard == "3"
    • and g_computerCard == "1") {
    • result = "用户";
    • }
    • elseif(g_userCard == "3"
    • and g_computerCard == "2") {
    • result = "计算机";
    • }
    • elseif(g_userCard == "3"
    • and g_computerCard == "3") {
    • result = "平手";
    • }
    • else {
    • print("亲,您输入的是什么");
    • }
    • return result;
    • }
    • // 数字转汉字显示
    • var show_cn_card = function(num_card) {
    • select (num_card) {
    • case "1" {
    • console.log("剪刀")
    • }
    • case "2" {
    • console.log("包袱")
    • }
    • case "3" {
    • console.log("锤子")
    • }
    • }
    • }
    • // 主程序入口
    • while (true) {
    • // 游戏规则显示
    • game_tip()
    • // 接收用户输入(数字牌)
    • var g_userCard = send_card_user()
    • // 用户退出游戏处理
    • if (g_userCard == "exit"
    • or g_userCard == "EXIT") {
    • console.close()
    • // console.pause(false);
    • }
    • // 数字转汉字显示
    • show_cn_card(g_userCard)
    • // 计算机出牌
    • var g_computerCard = send_card_computer()
    • //console.log(g_computerCard,type(g_computerCard))
    • // 数字转汉字显示
    • show_cn_card(g_computerCard)
    • // 胜负判断
    • var g_winner = judge_winner(g_userCard, g_computerCard)
    • select (g_winner) {
    • case "用户" {
    • console.log("恭喜,你赢了,厉害")
    • }
    • case "计算机" {
    • console.log("不好意思你输了,努力吧")
    • }
    • case "平手" {
    • console.log("平手,加油")
    • }
    • else {
    • console.log("输入值不对")
    • }
    • }
    • }
    • console.pause(true);
    Code PythonLine:132复制
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.
  • 118.
  • 119.
  • 120.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
    • python版本
    • #!/usr/bin/env python3
    • # -*- coding: utf-8 -*-
    • """
    • 项目猜拳游戏
    • 基本规则:
    • 1、用户与计算机出拳,然后判断胜负,显示结果
    • 2、我们用 1表示"剪刀" 2表示“包袱” 3表示“锤头”
    • 3、“剪刀”>"包袱" "包袱" > "锤头" “锤头” > "剪刀"
    • 开发思路:
    • 1、用户先出牌
    • 2、计算机出牌
    • 3、判断胜负
    • 4、【1-3】之间需要进行迭代循环
    • 难点:
    • 1、如何判断计算机与用户谁赢
    • 用户 计算机 胜方
    • ----------------------------
    • 1 1 平手
    • 1 2 用户
    • 1 3 计算机
    • 2 1 计算机
    • 2 2 平手
    • 2 3 用户
    • 3 1 用户
    • 3 2 计算机
    • 3 3 平手
    • """
    • import random # 导入随机数模块
    • # 定义的全局变量
    • g_userCard = "-1" # 用户牌
    • g_computerCard = "-1" # 计算机牌
    • g_winner = "未知" # 胜负
    • # 游戏规则显示
    • def game_tip():
    • print("游戏规则显示")
    • print("------------- 游戏:不粉不黑面向群编程目标日入一万 -------------")
    • print("------------- 1表示剪刀 2表示包袱 3表示锤头 -------------")
    • print("------------- 输入“exit” 或“EXIT 退出系统” -------------")
    • # 用户出牌
    • def send_card_user():
    • return input("请出牌:")
    • # 计算机出牌
    • def send_card_computer():
    • print("计算机出牌")
    • int_input = random.randint(1,3) # 产生随机数
    • return str(int_input) #返回字符串类型
    • # 判断胜负
    • def judge_winner(g_userCard, g_computerCard):
    • result = "未知" # 定义返回数值
    • if (g_userCard in ["1","2","3"]) and (g_computerCard in ["1","2","3"]):
    • if g_userCard == "1" and g_computerCard == "1":
    • result = "平手"
    • elif g_userCard == "1" and g_computerCard == "2":
    • result = "用户"
    • elif g_userCard == "1" and g_computerCard == "3":
    • result = "计算机"
    • elif g_userCard == "2" and g_computerCard == "1":
    • result = "计算机"
    • elif g_userCard == "2" and g_computerCard == "2":
    • result = "平手"
    • elif g_userCard == "2" and g_computerCard == "3":
    • result = "用户"
    • elif g_userCard == "3" and g_computerCard == "1":
    • result = "用户"
    • elif g_userCard == "3" and g_computerCard == "2":
    • result = "计算机"
    • elif g_userCard == "3" and g_computerCard == "3":
    • result = "平手"
    • else:
    • print("亲,您输入的是什么")
    • return result
    • # 数字转汉字显示
    • def show_cn_card(num_card):
    • if num_card == "1":
    • print("剪刀")
    • elif num_card == "2":
    • print("包袱")
    • elif num_card == "3":
    • print("锤子")
    • # 主程序入口
    • while True:
    • # 游戏规则显示
    • game_tip()
    • # 接收用户输入(数字牌)
    • g_userCard = send_card_user()
    • # 用户退出游戏处理
    • if g_userCard == "exit" or g_userCard == "EXIT":
    • quit() # 表示退出系统
    • # 数字转汉字显示
    • show_cn_card(g_userCard)
    • # 计算机出牌
    • g_computerCard = send_card_computer()
    • # 数字转汉字显示
    • show_cn_card(g_computerCard)
    • # 胜负判断
    • g_winner = judge_winner(g_userCard, g_computerCard)
    • if g_winner == "用户":
    • print("恭喜,你赢了,厉害")
    • elif g_winner == "计算机":
    • print("不好意思你输了,努力吧")
    • elif g_winner == "平手":
    • print("平手,加油")
    • else:
    • print("输入值不对")

    最新回复 (3)
    • 光庆 2023-8-13
      0 2
      挺好的例子,但代码可优化空间较大
    • 光庆 2023-8-14
      1 3
      Code AardioLine:29复制
    • 1.
    • 2.
    • 3.
    • 4.
    • 5.
    • 6.
    • 7.
    • 8.
    • 9.
    • 10.
    • 11.
    • 12.
    • 13.
    • 14.
    • 15.
    • 16.
    • 17.
    • 18.
    • 19.
    • 20.
    • 21.
    • 22.
    • 23.
    • 24.
    • 25.
    • 26.
    • 27.
    • 28.
    • 29.
      • import console;
      • // 主程序入口
      • while (true) {
      • // 游戏规则显示
      • console.log('游戏规则显示\n\n
      • ------------- 游戏:不粉不黑面向群编程目标日入一万 ------------\n\n
      • ------------- 1:剪刀 2:包袱 3:锤头 exit:退出系统 ------------\n')
      • // 用户出牌
      • var userCard;
      • do {
      • userCard = console.getText("请用户出牌:");
      • if ..string.lower(userCard) == "exit" break 2;
      • userCard = tonumber( userCard,10 ):-1;
      • } while (
      • userCard&3!=userCard
      • )
      • console.log("用户出牌:"+({"剪刀","包袱","锤子"})[userCard]); // 数字转汉字显示
      • // 电脑出牌
      • var computerCard = math.random(1, 3);
      • console.log("电脑出牌:"+({"剪刀","包袱","锤子"})[computerCard]);
      • // 胜负判断
      • console.log("游戏结果:"+({"平手,加油","恭喜,你赢了,厉害","不好意思你输了,努力吧!"})[(computerCard+3-userCard)%3+1]);
      • console.log('\n\n==============================游戏结束,开始新游戏=========================')
      • }

      改了一个跟你的风格不一样的。

    • axuanup 2023-8-15
      0 4
      还得是大佬 。哈哈哈哈哈哈
    返回