c 怎么实现计算24点的程序-亚博电竞手机版

c 怎么实现计算24点的程序

这篇“c 怎么实现计算24点的程序”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“c 怎么实现计算24点的程序”文章吧。

简单的程序:

1. 运行程序

2. 输入4个整数,比如:3 3 7 8

3. 显示所有可能的组合

代码:

#include"assert.h"#includedoubleoperate(doublenum1,doublenum2,intop){assert(op>=0&&op<4);if(op==0){returnnum1 num2;}elseif(op==1){returnnum1-num2;}elseif(op==2){returnnum1*num2;}else{returnnum1/num2;}}intcalculate(intnum1,intnum2,intnum3,intnum4){charoperators[]=" -*/";for(inti=0;i<4;i ){for(intj=0;j<4;j ){for(intk=0;k<4;k ){doubleret=operate(num1,num2,i);ret=operate(ret,num3,j);ret=operate(ret,num4,k);if(abs(ret-24)<0.001){printf("((%d%c%d)%c%d)%c%d=%f\n",num1,operators[i],num2,operators[j],num3,operators[k],num4,ret);}ret=operate(num1,num2,i);doubleret2=operate(num3,num4,k);ret=operate(ret,ret2,j);if(abs(ret-24)<0.001){printf("(%d%c%d)%c(%d%c%d)=%f\n",num1,operators[i],num2,operators[j],num3,operators[k],num4,ret);}ret=operate(num2,num3,j);ret=operate(num1,ret,i);ret=operate(ret,num4,k);if(abs(ret-24)<0.001){printf("(%d%c(%d%c%d))%c%d=%f\n",num1,operators[i],num2,operators[j],num3,operators[k],num4,ret);}ret=operate(num2,num3,j);ret=operate(ret,num4,k);ret=operate(num1,ret,i);if(abs(ret-24)<0.001){printf("%d%c((%d%c%d)%c%d)=%f\n",num1,operators[i],num2,operators[j],num3,operators[k],num4,ret);}ret=operate(num3,num4,k);ret=operate(num2,ret,j);ret=operate(num1,ret,i);if(abs(ret-24)<0.001){printf("%d%c(%d%c(%d%c%d))=%f\n",num1,operators[i],num2,operators[j],num3,operators[k],num4,ret);}}}}return0;}intmain(intargc,char*argv[]){intnums[4]={0,0,0,0};std::cin>>nums[0]>>nums[1]>>nums[2]>>nums[3];for(inti=0;i

以上就是关于“c 怎么实现计算24点的程序”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注恰卡编程网行业资讯频道。

展开全文
内容来源于互联网和用户投稿,文章中一旦含有亚博电竞手机版的联系方式务必识别真假,本站仅做信息展示不承担任何相关责任,如有侵权或涉及法律问题请联系亚博电竞手机版删除

最新文章

网站地图