24点我也没想到太好的办法
主要思路如下(以四个数举例):
1.先生成3个符号,数量是4* 4* 4也就是64个不同的符号数组,类似这样[+,-,*]
2.将输入的四个数与64组不同符号对应运算保留可以得到24的符号数组
3.这样就可以得到这四个数字经过怎样的运算得到结果了,然后输出,要给结果带上(),例如 3+(4 *5)+1=24这样
这样算还有一些问题,就像(1+2)*(3+5)这种处理不了,写完了以后才看到别人的分治法:
1.将两个数字合并为一个新的数字。(共存在相加,相乘,除以,减去,被除,被减6种可能)
2.将N-1个数字加减乘除得到24。
这样处理应该更好,不过安慰自己一下,因为写的是通用的24点计算器,可以输入五六七八个数字,用这种方法感觉处理起来会有点麻烦,管他嘞,写完交差。
源码地址:https://github.com/woniu9524/24-point
项目简介
这是一个二十四点小程序,功能分成二十四点游戏和二十四点计算器两个部分。目标及其实现如下。
目标:控制台输入4个数字,产生一组解
实现:【24点计算机—一个结果】
目标:测试所有二十四点问题,给出每组的所有解
实现:【24点游戏----生成所有解筛选游戏难度】
目标:JavaFX GUI 美化1、2
实现:【制作了GUI界面】
目标:对于一般问题:多于4张牌,并且答案不是24的也能处理 *
实现:【24点计算器—所有结果】
必要条件及安装
条件
jdk1.8
idea
安装
源码用idea打开即可
参考:https://blog.csdn.net/qq_40938169/article/details/82453743