Python实现24点游戏

您所在的位置:网站首页 计算器24点游戏怎么输答案 Python实现24点游戏

Python实现24点游戏

2024-07-10 18:07| 来源: 网络整理| 查看: 265

24点游戏是一种数学益智游戏,它的目标是通过使用加法、减法、乘法和除法这四种基本算术运算,使得四个数字的结果等于24。这个游戏不仅能锻炼玩家的数学计算能力,还能提高逻辑思维和快速反应能力。

游戏规则非常简单:

游戏通常使用一副扑克牌中的1到10的数字牌,去掉大小王和J、Q、K,因为这些牌没有具体的数值。每次从牌堆中抽取四张牌,或者由玩家随机选择四张数字牌。玩家需要使用这四张牌上的数字,通过加、减、乘、除的组合,得出结果为24的算式。每个数字必须且只能使用一次。运算的顺序没有限制,可以使用括号来改变运算顺序。完成算式后,可以使用计算器验证结果是否正确。

24点游戏有多种解法,一个数字组合可能有多种不同的算式可以得到24。例如,使用数字2、3、4、5,可以得到以下算式之一:

(5 - 2) * (3 + 4) = 24(5 - 3) * (4 + 2) = 244 * (5 - 2) + 3 = 24等等。

这个游戏适合各个年龄段的人玩,可以单独挑战,也可以和朋友或家人一起竞赛,看谁能更快地找到正确的解法。24点游戏不仅是一种娱乐方式,还是一种很好的数学教育工具。

程序很多,但是都不如自己写一个:

import random def random_solve_24(): while True: nums = [random.randint(1, 14) for _ in range(4)] print(f'请用下面的数据完成24点:{nums}') solutions = generate_solutions_improved(nums) a=input('输入任意键回车后查看答案') print(f'解法为{solutions}') a=input('输入任意键回车后查看下一题(退出输入Y)') print('==============================================================================================') if a=='Y': break def generate_solutions_improved(nums, target=24, epsilon=1e-6): def solve(nums, history): if len(nums) == 1: if abs(nums[0] - target) < epsilon: solutions.add(history[0]) return for i in range(len(nums)): for j in range(i + 1, len(nums)): new_nums = [nums[k] for k in range(len(nums)) if k != i and k != j] new_history = [history[k] for k in range(len(nums)) if k != i and k != j] for a, b, op, in [(nums[i], nums[j], '+'), (nums[i], nums[j], '-'), (nums[j], nums[i], '-'), (nums[i], nums[j], '*'), (nums[i], nums[j], '/'), (nums[j], nums[i], '/')]: if op == '/' and abs(b) < epsilon: continue # Avoid division by zero result = eval(f"a{op}b") expression = f"({history[i]}{op}{history[j]})" solve(new_nums + [result], new_history + [expression]) solutions = set() solve(nums, list(map(str, nums))) return solutions random_solve_24()

运行就可以了。

打包程序

主要依靠pyinstaller库实现,安装:

pip install pyinstaller

然后win+r,输入cmd打开终端

输入自己的代码文件所在的路径:

cd /d "E:\Xiao work\其他\脚本系列"

在对应的这个文件夹里面去直接输入cmd打开也行。

然后输入打包的文件名称,我的文件名叫 24点游戏.py

pyinstaller --onefile 24点游戏.py

等待就行,后面就可以在这个目录下的dist文件夹里面找到这个程序了。

然后双击运行就行了:(这个文件可以)

效果如下:

效果还不错。可以思考,然后看答案。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3