4个10以内的数字,通过四则运算得到24

100以内数的混合四则运算 2017012314——100以内的混合四则运算项目报告 大家好! 本文大致描述了一个小学生四则运算软件的开发过程,既是对该段时间学习的记录,亦是对自己学习过程的一个总结。 需求分析 1.通过命令行程序输入一个数字n,产生n道100以内的加减乘除练习题; 2.判断传入参数是否合法,是否是在0-100之间的整数(或真分数); 3.考虑到用户对象是小学生,每个数字在0-100之间,运算符3-5个; 4... 阅读详情
请你用java写一个方法,判断给定的4个数字,每个数值在1~10之间,通过+ - * / 运算,结果为24,每个数字必须使用且只能使用一次。


网友提供的穷举法
  1. public class T {
  2.   int[] can = new int[4];
  3.   public static void main(String[] args) {
  4.     T tf = new T(3, 4, 5, 7);
  5.     System.out.println(tf.getResult());
  6.   }
  7.   public T(int a, int b, int c, int d) {
  8.     can[0] = a;
  9.     can[1] = b;
  10.     can[2] = c;
  11.     can[3] = d;
  12.   }
  13.   public String getResult() {
  14.     double result1 = 0;
  15.     double result2 = 0;
  16.     double result3 = 0;
  17.     for (int i = 0; i < 4; i++) {
  18.       for (int j = 0; j < 4; j++) {
  19.         for (int k = 0; k < 4; k++) {
  20.           if (i != j) {
  21.             result1 = cal(can[i], can[j], k);
  22.             for (int l = 0; l < 4; l++) {
  23.               for (int m = 0; m < 4; m++) {
  24.                 if (i != l && j != l) {
  25.                   result2 = cal(result1, can[l], m);
  26.                   for (int n = 0; n < 4; n++) {
  27.                     for (int o = 0; o < 4; o++) {
  28.                       if (i != n && j != n && l != n) {
  29.                         result3 = cal(result2, can[n], o);
  30.                         if (result3 == 24) {
  31.                           return result(can[i], k, can[j], m, can[l], o, can[n]);
  32.                         }
  33.                       }
  34.                     }
  35.                   }
  36.                 }
  37.               }
  38.             }
  39.           }
  40.         }
  41.       }
  42.     }
  43.     return null;
  44.   }
  45.   private String result(int can1, int op1, int can2, int op2, int can3, int op3, int can4) {
  46.     return "" + can1 + convert(op1) + can2 + convert(op2) + can3 + convert(op3) + can4;
  47.   }
  48.   private String convert(int opr) {
  49.     if (opr == 0) {
  50.       return "+";
  51.     } else if (opr == 1) {
  52.       return "-";
  53.     } else if (opr == 2) {
  54.       return "*";
  55.     } else if (opr == 3) {
  56.       return "/";
  57.     }
  58.     return "";
  59.   }
  60.   private double cal(double a, double b, int opr) {
  61.     if (opr == 0) {
  62.       return a + b;
  63.     } else if (opr == 1) {
  64.       return a - b;
  65.     } else if (opr == 2) {
  66.       return a * b;
  67.     } else if (opr == 3) {
  68.       return a / b;
  69.     }
  70.     return 0;
  71.   }
  72. }
运算结果
3*4+5+7












<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
24点游戏题库算法分析 目录一、4数种类分析二、四数排列算法分析三、分数计算类四、加减乘除操作符遍历五、探测4个数是否能计算24统计分析从标有1-10的数字的10个小球中取出1个小球记录小球的数字,然后将小球放回,如此反复4次取出4小球的数字组成的序号一共有多少种。注意:1.1.8.9 和1.8.1.9 算是一种。需要分为一下几种情况:一个有10种一共有10*9种 = 90一共有10 * ( 9 * 8 /2 )种 = 36010表示:10个相等的两个小球( 9 * 8 /2 )表示:另外两个小球不相等的情况。一共有(10*9)/ 阅读详情

相关推荐

JavaScript(版) 24点(内附《JavaScript 语言参考》中文版.chm,css2.chm和扑克牌图片)

小时候玩的游戏,自己做做,挺有意思...

算法实践:算24

算24 描述 给出4个小于10个正整数,你可以使用加减乘除4种运算以及括号把这4个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致(这里的除法定义是实数除法)。 比如,对于5,5,5,1,我们知道5 * (5 – 1 / 5) = 24,因此可以得到24。又比如,对于1,1,4,2,我们怎么都...

matafeiyanll的博客 2463

用Cloudflare Worker搭建你的私人Gemini Pro API

文章介绍如何通过开源项目gemini-cli-openai将谷歌Gemini模型转换为兼容OpenAI API的服务,解决Gemini CLI的三大使用障碍:网络访问、命令行操作和生态整合问题。部署流程主要包括获取Google OAuth2凭证、配置Cloudflare Worker项目并设置KV存储,最终可在CherryStudio等图形客户端中调用Gemini。该方法利用Cloudflare全球网络实现加速访问,同时保持认证信息安全可控。

Hsiao的二进制生活 1684

快算24

Description 给定4个不大于10的正整数(范围1-10),要求在不改变数据先后顺序的情况下,采用加减乘除四种运算,找到一个表达式,使得最后的结果是24。 Input 4个不大于10的正整数。输入数据保证存在唯一解。 Output 不改变位置顺序,由'+','-','*','/'4个运算符和'(',')'组成的表达式 Sample Input 5 5 1 5 Sample

不羁的风的专栏 1140

别再纠结Dify了!实测对比RAGFlow和Dify,聊聊企业知识库到底该怎么选

本文深度对比了RAGFlow和Dify在企业知识库选型中的实际表现,从技术架构、性能指标、部署成本等多维度进行分析。RAGFlow在复杂文档处理和准确率方面表现突出,适合有专职技术团队的企业;而Dify则以低门槛和快速部署见长。文章提供了六维度评估法,帮助企业根据文档复杂度、准确率要求等技术指标做出明智选择。

weixin_30897233的博客 675

PCIE Lane Margining Linux 环境配置

Copy all the provided files in folder PYC38 or PYC310 to the created pcie_lmt folder. Index of /ftp/python/3.8.10/Copy below commands to a file and rename it as "scan_pcie.py", the commands are from "685662 PCIe-LMT-Gen4_Gen5-r0p77.pdf" in the lane margi

mysongshine的博客 1439

枚举+递归算法:计算24

问题描述: 给出4个小于10的正整数,可以使用+-*/()的运算将这4个数连接起来得到一个表达式。问,是否存在一种计算方式可以使表达式的结果为24。 输入: 输入多行数据,每行包括4个小于10的正整数。最后一行数据为4个0,作为数据的终止。 输出: 对于每一组数据,如果可以得到24,则输出“YES”,否则输出“NO”。 样例输入与输出: 5 5 5 1 YES 1 1 4 2...

CrazyTony的博客 583

Dell T7910工作站LSISAS3008IR RAID配置全流程:从零到实战避坑指南

本文提供了Dell Precision T7910工作站集成LSISAS3008IR RAID控制器的完整配置与避坑指南。详细拆解了从固件版本确认、安全更新到创建RAID 0阵列的全流程,并重点预警了固件与UEFI安全启动冲突等常见陷阱,帮助用户高效、稳定地部署存储系统。

qq_27496129的博客 1075

24点算法研究

24点是一个数学益智游戏,传统24点的规则是 任意取4个1~10的整数,用加、减、乘、除(可加括 号)把这4个数算成24,每个数必须用一次且只能用 一次。 最近要写一个算24点的算法,制作一个24点计算器,所以参考了几篇文献。 《数学游戏24点可行性最小值证明及通用算法》 ...

weixin_44690887的博客 1004

YOLOv8改进 | 细节涨点篇 | DySample一种超级轻量的动态上采样算子(效果完爆CARAFE)

本文给大家带来的改进机制是一种号称超轻量级且有效的动态上采样器——DySample。与传统的基于内核的动态上采样器相比,DySample采用了一种基于点采样的方法,相比于以前的基于内核的动态上采样器,DySample具有更少的参数、浮点运算次数、GPU内存和延迟。此外,DySample在包括语义分割、目标检测、实例分割、全景分割和单目深度估计在内的五个预测任务中,性能均优于其他上采样器(截至目前最有效的上采样算子)。

Snu77的博客 1万+

【即插即用模块】注意力篇 | TGRS 2025 | CDFIM:通道+空间多尺度注意力,双模态特征融合增强,性能翻倍!

C2DFF-Net提出了一种轻量级跨模态特征融合模块CDFIM,通过模态差异感知和多尺度深度滤波增强双模态互补信息。该模块采用通道-空间注意力协同机制,以极低计算成本(仅增加0.26M参数)提升多模态目标检测性能,在三个遥感数据集上平均提升mAP约1.7%。适用于无人机等边缘设备的实时检测任务,为跨模态融合提供高效解决方案。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 628

java 4 7怎么算术运算,<b>java判断4个10以内的数字,通过四则运算得到24</b>[Java编程]...

赞助商链接本文“java判断4个10以内的数字,通过四则运算得到24[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:请你用java写一个办法,判断给定的4个数字,每个数值在1~10之间,通过+ - * / 运算,后果为24,每个数字必须利用且只能利用一次.网友供应的穷举法public class ...

weixin_39842955的博客 282

13、超声断层乳腺图像融合算法:乳腺癌诊断新突破

本文介绍了一种新型超声断层乳腺图像融合算法,通过结合超声透射(UTTc、UTTα)和反射断层图像(URT),实现对乳腺组织的多参数自动可视化。该算法能有效区分良性与恶性肿瘤,具有高准确性、无辐射、低成本等优势,适用于大规模乳腺癌早期筛查。初步临床测试验证了其可行性,未来有望成为乳腺癌诊断的新标准。

9q8w7e6r5的博客 156

速算24点java_4个数字计算24点java算法(附源码)

今天看到一个帖子说程序员面试考24点算法,想为什么不用程序来实现呢。在网上没有找到非常完美的算法,包括那个24点计算器,给出的结果重复的也较多。所以自己写了一个。在这儿贴出来给大家分享一下。附源码。问题给出4个1~10之间的数字,使用加、减、乘、除和括号列出一个计算结果为24的算式。比如: 3、3、8、8 可以写成 8/(3-8/3)。但不是每一个都像这个例子只有一个结果,需要列出所有可能的算式。...

weixin_36179394的博客 1720

《FreeRTOS 入门与实战》第20章:移植到 RISC-V 平台

处理器上下文保存/恢复机制中断处理与任务切换的协同时钟源配置(通常使用 Machine Timer)平台特定的汇编代码实现// 典型RISC-V移植文件结构FreeRTOS/├── Source/portable/[编译器]/RISC-V/│ ├── port.c // 关键移植接口│ ├── portASM.s // 汇编级处理│ └── portmacro.h // 架构宏定义。

2301_79143213的博客 450

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

11210怎么等于24_以后再有人让你算24点,翻出这张表来就行了(仅限四则运算)1...

1111:noanswer!1112:noanswer!1113:noanswer!1114:noanswer!1115:noanswer!1116:noanswer!1117:noanswer!1118:((1+(1+1))*8)=241119:noans...

weixin_39978696的博客 6774

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C语言每日一练——第70天:24点问题

C语言每日一练 2021年12月29日——24点问题——分析:这道题理解起来很简单,就是拼凑加减乘除,使4个数的运算结果等于24。 由于四则运算中,乘除的优先级高于加减,所以必须“加括号”来限定4个数之间运算优先级。 例如:A+B*C-D 这个式子,通过增加括号,可以产生多种结果,比如 (A+B)*(C-D) 和 A+(B*C-D)。 那么总共有几种加括号的方法呢,该如何分类呢? 一开始我在想是不是能按照括号对数进行分类,但后来发现,要想将4个数字的运算优先级细分,必须使用两对括号。

Super辉sir的博客 2万+

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

B1. 算 24 点

这段代码的主要目的是实现一个 “24 点” 游戏的求解程序。“24 点” 游戏是通过给定的四个整数,运用四则运算(加、减、乘、除),尝试找到一种运算组合使得最终结果为 24。程序会不断接收用户输入的四个整数,判断是否能通过四则运算得到 24,并将结果(“Yes” 表示能得到 24,“No” 表示不能)存入循环队列中,最后依次输出队列中的结果。

2401_87727582的博客 2090

11210怎么等于24_所有能算24点的四个数,(4个数只能是1——10之间的数)我举个例:1,1,1,8.1,1,2,6.………………所有能算...

共回答了12个问题采纳率:91.7%1118(1+1+1)*8=241126(1+1+2)*6=241127(1+2)*(1+7)=241128:(1*1+2)*8=241129:(1+2)*(9-1)=2411210:(1+1)*(2+10)=241134:(1+1)*3*4=241135:(1+3)*(1+5)=241136:(1*1+3)*6=241137:(1*1+7)*3=241138:...

weixin_39661345的博客 2万+

算24点预习

对于每种运算,它创建一个新的vector<double>类型的变量next_round,其中包含了除了这对数字之外的其他数字以及这对数字运算后的结果。24点游戏是一种数学游戏,目标是通过给定的四个数字(每个数字可以使用一次),使用加、减、乘、除四则运算,以及括号来改变运算顺序,使得最后的结果为24。具体来说,就是对于每一个数字,我们尝试把它和后面的数字用加减乘除四种运算连接起来,然后再对结果继续递归处理,直到处理完所有的数字。在递归的过程中,我们要注意运算的优先级,比如乘法和除法要比加法和减法先计算。

2401_83521651的博客 1820

智力题—用数字5,5,5,1,进行四则运算,每个数字当且仅当用一次,要求运算结果值为24

用数字5,5,5,1,进行四则运算,每个数字当且仅当用一次,要求运算结果值为24 5*(5-1/5)=24

qq_44847147的博客 914
上一篇: 记算出一个字符串出现的次数
下一篇: 如何设置WEB SERVICE超时时间
老紫竹
博客等级 码龄19年 1万+粉丝 1252原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值