用python写一个24点小程序
时间: 2024-05-15 14:16:41 浏览: 74
以下是一个用Python实现的简单的24点小程序:
```python
import itertools
def calculate24(nums):
ops = ['+', '-', '*', '/']
for perm in itertools.permutations(nums):
for ops1 in ops:
for ops2 in ops:
for ops3 in ops:
a, b, c, d = perm
try:
exp = '{}{}{}{}{}{}{}'.format(a, ops1, b, ops2, c, ops3, d)
if abs(eval(exp) - 24) < 1e-6:
return exp
except ZeroDivisionError:
pass
return None
nums = [int(x) for x in input('请输入四个数字,以空格分隔:').split()]
exp = calculate24(nums)
if exp:
print('可以通过以下表达式得到24:', exp)
else:
print('无法通过四个数字得到24')
```
该程序首先定义了四种运算符(加、减、乘、除),然后使用`itertools.permutations()`生成四个数字的全排列,然后对每个排列进行四则运算的组合,检查是否能够得到24。注意处理除数为0的情况。
运行程序时,输入四个数字,程序将自动计算并输出可以得到24的表达式,如果无法得到24,则输出提示信息。
阅读全文