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)