纸牌游戏之24点

python练习之二十四点 游戏规则  二十四点是一种 益智游戏 ,它能在游戏中锻炼人们的 心算 ,它往往要求人们将三个数字进行加减乘除 四则混合运算 (允许使用括号)求得二十四。
#纸牌游戏 24点
import itertools
#函数1 参数:一个数字列表,从中顺序取出数字,将四则混合运算符按照顺序来添加到三个数字中间并进行运算
def fun1(li,target=24):
      i=0
      num_1=li[0]
      num_2=li[1]
      num_3=li[2]
      method=['+','-','*','/']
      method2=['+','-','*','/']
      for md in method:
            for md2 in method2:
                  str1 = '('+str(num_1)+md+str(num_2)+')'+md2+str(num_3)
                  #print(str1)
                  if(eval_r(str1)==int(target)):
                        print(str1+'=%d'%(target))
                        i+=1
      return i
#自带库实现三个数随机组合,   python自带的库函数 之后调用fun1函数进行计算判断
def fun2(a,b,c):
      flag=0
      list1 = [a,b,c]
      #得到长度为3的所有list1的排列序列
      iter = itertools.permutations(list1,3)
      for i in list(iter):
            flag+=fun1(i)
      if flag==0:
            print('无解')
a= input("输入第一个数字")
b= input("输入第二个数字")
c= input("输入第三个数字")
fun2(a,b,c)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值