1、VC6.0。二、方案设计与论证关于这个计算24游戏的设计,首先我将题目看成两部分,一部分为运算数,一部分为运算符。首先由于有四个数,则只有三个运算符,三个运算符中在加减乘除中选取。由于涉及了括号,个人认为用穷举法才能全面地进行运算,我们可以将运算符和括号这部分归为主运算部分,在这部分中,运算数的位置固定,但是运算符和括号的位置会改变,而且程序主要就是在这部分运算,直接将数值引入,然后计算判断是否等于24,若等于24,则输出数值和这些运算符、括号的位置构成的运算式;然而,这是不够全面的,因为还要考虑到运算数的排列位置,于是有了第二部分,运算数的位置全排列,同样是采用穷举法,将运算数全排列,在每个
2、排列后面调用主运算的方法,从而达到全面不遗漏地计算。在MAIN函数中,我们仅需要记录输入的4个数字,然后将数值用在全排列函数中即可。整个程序的设计只需定义一个主函数,并不涉及相关的函数调用。看起来很繁琐,但在运用上很简单,只要将各种情况运用数学思维列举出来,能简明扼要地表现出来。具体程序过程如图1所示。三、程序框图或流程图,程序清单与调用关系 整个程序只用到了一个主函数,不涉及其他调用。分布列出所有情况。 Main函数,程序的主函数 定义浮点类型变量a,b,c,d,w,x,y,z a,b,c,d分别代表定义输入的四个数 w,x,y,z分别代表输出计算四个数Multiplex部分代表各个计算公式
3、图1四、全部源程序清单#include void jisuan(float a,float b,float c,float d) /进行运算符和括号的排列及计算 if(a+b+c+d=24) printf(%1.0f+%1.0f+%1.0f+%1.0f=24n,a,b,c,d); if(a+b+c-d=24) printf(%1.0f+%1.0f+%1.0f-%1.0f=24n if(a+b+c*d=24) printf(%1.0f+%1.0f+%1.0f*%1.0f=24n if(a+(b+c)*d=24) printf(%1.0f+(%1.0f+%1.0f)*%1.0f=24n if(a+
4、b+c)*d=24) printf(%1.0f+%1.0f+%1.0f)*%1.0f=24n if(a+b+c/d=24) printf(%1.0f+%1.0f+%1.0f/%1.0f=24n if(a+(b+c)/d=24) printf(%1.0f+(%1.0f+%1.0f)/%1.0f=24n if(a+b+c)/d=24) printf(%1.0f+%1.0f+%1.0f)/%1.0f=24n if(a+b-c+d=24) printf(%1.0f+%1.0f-%1.0f+%1.0f=24n if(a+b-c-d=24) printf(%1.0f+%1.0f-%1.0f-%1.0f=2
5、4n if(a+b-c*d=24) printf(%1.0f+%1.0f-%1.0f*%1.0f=24n if(a+(b-c)*d=24) printf(%1.0f+(%1.0f-%1.0f)*%1.0f=24n if(a+b-c)*d=24) printf(%1.0f+%1.0f-%1.0f)*%1.0f=24n if(a+b-c/d=24) printf(%1.0f+%1.0f-%1.0f/%1.0f=24n if(a+(b-c)/d=24) printf(%1.0f+(%1.0f-%1.0f)/%1.0f=24n if(a+b-c)/d=24) printf(%1.0f+%1.0f-%1
6、.0f)/%1.0f=24n if(a+b*c+d=24) printf(%1.0f+%1.0f*%1.0f+%1.0f=24n if(a+b)*c+d=24) printf(%1.0f+%1.0f)*%1.0f+%1.0f=24n if(a+b*(c+d)=24) printf(%1.0f+%1.0f*(%1.0f+%1.0f)=24n if(a+b)*(c+d)=24) printf(%1.0f+%1.0f)*(%1.0f+%1.0f)=24n if(a+b*c-d=24)printf(%1.0f+%1.0f*%1.0f-%1.0f=24n if(a+b)*c-d=24) printf(%
7、1.0f+%1.0f)*%1.0f-%1.0f=24n if(a+b*(c-d)=24) printf(%1.0f+%1.0f*(%1.0f-%1.0f)=24n if(a+b)*(c-d)=24) printf(%1.0f+%1.0f)*(%1.0f-%1.0f)=24n if(a+b*c*d=24) printf(%1.0f+%1.0f*%1.0f*%1.0f=24n if(a+b)*c*d=24) printf(%1.0f+%1.0f)*%1.0f*%1.0f=24n if(a+b*c/d=24) printf(%1.0f+%1.0f*%1.0f/%1.0f=24n if(a+b)*c/
8、d=24) printf(%1.0f+%1.0f)*%1.0f/%1.0f=24n if(a+b)*(c/d)=24) printf(%1.0f+%1.0f)*(%1.0f/%1.0f)=24n if(a+b/c+d=24) printf(%1.0f+%1.0f/%1.0f+%1.0f=24n if(a+b)/c+d=24) printf(%1.0f+%1.0f)/%1.0f+%1.0f=24n if(a+b/(c+d)=24) printf(%1.0f+%1.0f/(%1.0f+%1.0f)=24n if(a+b)/(c+d)=24) printf(%1.0f+%1.0f)/(%1.0f+%
9、1.0f)=24n if(a+b/c-d=24)printf( if(a+b)/c-d=24) printf(%1.0f+%1.0f)/%1.0f-%1.0f=24n if(a+b/(c-d)=24) printf(%1.0f+%1.0f/(%1.0f-%1.0f)=24n if(a+b)/(c-d)=24) printf(%1.0f+%1.0f)/(%1.0f-%1.0f)=24n if(a+b/c*d=24) printf(%1.0f+%1.0f/%1.0f*%1.0f=24n if(a+b)/c*d=24) printf(%1.0f+%1.0f)/%1.0f*%1.0f=24n if(a
10、+b)/(c*d)=24) printf(%1.0f+%1.0f)/(%1.0f*%1.0f)=24n if(a+b/c/d=24) printf(%1.0f+%1.0f/%1.0f/%1.0f=24n if(a+b)/c/d=24) printf(%1.0f+%1.0f)/%1.0f/%1.0f=24n if(a+b)/(c/d)=24) printf(%1.0f+%1.0f)/(%1.0f/%1.0f)=24n/- if(a-b+c+d=24) printf(%1.0f-%1.0f+%1.0f+%1.0f=24n if(a-b+c-d=24) printf(%1.0f-%1.0f+%1.0
11、f-%1.0f=24n if(a-b+c*d=24) printf(%1.0f-(%1.0f+%1.0f)*%1.0f=24n if(a-(b+c)*d=24) printf(%1.0f-%1.0f+%1.0f*%1.0f=24n if(a-b+c)*d=24) printf(%1.0f-%1.0f+%1.0f)*%1.0f=24n if(a-b+c/d=24) printf(%1.0f-%1.0f+%1.0f/%1.0f=24n if(a-(b+c)/d=24) printf(%1.0f-(%1.0f+%1.0f)/%1.0f=24n if(a-b+c)/d=24) printf(%1.0f
12、-%1.0f+%1.0f)/%1.0f=24n if(a-b-c+d=24) printf(%1.0f-%1.0f-%1.0f+%1.0f=24n if(a-b-c-d=24) printf(%1.0f-%1.0f-%1.0f-%1.0f=24n if(a-b-c*d=24) printf(%1.0f-%1.0f-%1.0f*%1.0f=24n if(a-(b-c)*d=24) printf(%1.0f-(%1.0f-%1.0f)*%1.0f=24n if(a-b-c)*d=24) printf(%1.0f-%1.0f-%1.0f)*%1.0f=24n if(a-b-c/d=24) print
13、f(%1.0f-%1.0f-%1.0f/%1.0f=24n if(a-(b-c)/d=24) printf(%1.0f-(%1.0f-%1.0f)/%1.0f=24n if(a-b-c)/d=24) printf( if(a-b*c+d=24) printf(%1.0f-%1.0f*%1.0f+%1.0f=24n if(a-b)*c+d=24) printf(%1.0f-%1.0f)*%1.0f+%1.0f=24n if(a-b*(c+d)=24) printf(%1.0f-%1.0f*(%1.0f+%1.0f)=24n if(a-b)*(c+d)=24) printf(%1.0f-%1.0f
14、)*(%1.0f+%1.0f)=24n if(a-b*c-d=24)printf(%1.0f-%1.0f*%1.0f-%1.0f=24n if(a-b)*c-d=24) printf(%1.0f-%1.0f)*%1.0f-%1.0f=24n if(a-b*(c-d)=24) printf(%1.0f-%1.0f*(%1.0f-%1.0f)=24n if(a-b)*(c-d)=24) printf(%1.0f-%1.0f)*(%1.0f-%1.0f)=24n if(a-b*c*d=24) printf(%1.0f-%1.0f*%1.0f*%1.0f=24n if(a-b)*c*d=24) pri
15、ntf(%1.0f-%1.0f)*%1.0f*%1.0f=24n if(a-b*c/d=24) printf(%1.0f-%1.0f*%1.0f/%1.0f=24n if(a-b)*c/d=24) printf(%1.0f-%1.0f)*%1.0f/%1.0f=24n if(a-b)*(c/d)=24) printf(%1.0f-%1.0f)*(%1.0f/%1.0f)=24n if(a-b/c+d=24) printf(%1.0f-%1.0f/%1.0f+%1.0f=24n if(a-b)/c+d=24) printf(%1.0f-%1.0f)/%1.0f+%1.0f=24n if(a-b/
16、(c+d)=24) printf(%1.0f-%1.0f/(%1.0f+%1.0f)=24n if(a-b)/(c+d)=24) printf(%1.0f-%1.0f)/(%1.0f+%1.0f)=24n if(a-b/c-d=24)printf( if(a-b)/c-d=24) printf(%1.0f-%1.0f)/%1.0f-%1.0f=24n if(a-b/(c-d)=24) printf(%1.0f-%1.0f/(%1.0f-%1.0f)=24n if(a-b)/(c-d)=24) printf(%1.0f-%1.0f)/(%1.0f-%1.0f)=24n if(a-b/c*d=24
17、) printf(%1.0f-%1.0f/%1.0f*%1.0f=24n if(a-b)/c*d=24) printf(%1.0f-%1.0f)/%1.0f*%1.0f=24n if(a-b)/(c*d)=24) printf(%1.0f-%1.0f)/(%1.0f*%1.0f)=24n if(a-b/c/d=24) printf(%1.0f-%1.0f/%1.0f/%1.0f=24n if(a-b)/c/d=24) printf(%1.0f-%1.0f)/%1.0f/%1.0f=24n if(a-b)/(c/d)=24) printf(%1.0f-%1.0f)/(%1.0f/%1.0f)=2
18、4n if(a*b+c+d=24) printf(%1.0f*%1.0f+%1.0f+%1.0f=24n if(a*(b+c)+d=24) printf(%1.0f*(%1.0f+%1.0f)+%1.0f=24n if(a*(b+c+d)=24) printf(%1.0f*(%1.0f+%1.0f+%1.0f)=24n if(a*b+c-d=24) printf(%1.0f*%1.0f+%1.0f-%1.0f=24n if(a*(b+c)-d=24) printf(%1.0f*(%1.0f+%1.0f)-%1.0f=24n if(a*(b+c-d)=24) printf(%1.0f*(%1.0
19、f+%1.0f-%1.0f)=24n if(a*b+c*d=24) printf(%1.0f*%1.0f+%1.0f*%1.0f=24n if(a*(b+c)*d=24) printf(%1.0f*(%1.0f+%1.0f)*%1.0f=24n if(a*b+c/d=24) printf(%1.0f*%1.0f+%1.0f/%1.0f=24n if(a*(b+c)/d=24) printf(%1.0f*(%1.0f+%1.0f)/%1.0f=24n if(a*b-c+d=24) printf(%1.0f*%1.0f-%1.0f+%1.0f=24n if(a*(b-c)+d=24) printf
20、(%1.0f*(%1.0f-%1.0f)+%1.0f=24n if(a*(b-c+d)=24) printf(%1.0f*(%1.0f-%1.0f+%1.0f)=24n if(a*b-c-d=24) printf(%1.0f*%1.0f-%1.0f-%1.0f=24n if(a*(b-c)-d=24) printf(%1.0f*(%1.0f-%1.0f)-%1.0f=24n if(a*(b-c-d)=24) printf(%1.0f*(%1.0f-%1.0f-%1.0f)=24n if(a*b-c*d=24) printf(%1.0f*%1.0f-%1.0f*%1.0f=24n if(a*(b
21、-c)*d=24) printf(%1.0f*(%1.0f-%1.0f)*%1.0f=24n if(a*b-c/d=24) printf(%1.0f*%1.0f-%1.0f/%1.0f=24n if(a*(b-c)/d=24) printf(%1.0f*(%1.0f-%1.0f)/%1.0f=24n if(a*b*c+d=24) printf(%1.0f*%1.0f*%1.0f+%1.0f=24n if(a*b*(c+d)=24) printf(%1.0f*%1.0f*(%1.0f+%1.0f)=24n if(a*b*c-d=24) printf(%1.0f*%1.0f*%1.0f-%1.0f
22、=24n if(a*b*(c-d)=24) printf(%1.0f*%1.0f*(%1.0f-%1.0f)=24n if(a*b*c*d=24) printf(%1.0f*%1.0f*%1.0f*%1.0f=24n if(a*b*c/d=24) printf(%1.0f*%1.0f*%1.0f/%1.0f=24n if(a*b*(c/d)=24) printf(%1.0f*%1.0f*(%1.0f/%1.0f)=24n if(a*b/c+d=24) printf(%1.0f*%1.0f/%1.0f+%1.0f=24n if(a*b/(c+d)=24) printf(%1.0f*%1.0f/(
23、%1.0f+%1.0f)=24n if(a*b/c-d=24) printf(%1.0f*%1.0f/%1.0f-%1.0f=24n if(a*b/(c-d)=24) printf(%1.0f*%1.0f/(%1.0f-%1.0f)=24n if(a*b/c*d=24) printf(%1.0f*%1.0f/%1.0f*%1.0f=24n if(a*(b/c)*d=24) printf(%1.0f*(%1.0f/%1.0f)*%1.0f=24n if(a*b/(c*d)=24) printf(%1.0f*%1.0f/(%1.0f*%1.0f)=24n if(a*b/c/d=24) printf(%1.0f*%1.0f/%1.0f/%1.0f=24n if(a*(b/c)/d=24) printf(%1.0f*(%1.0f/%1.0f)/%1.0f=24n if(a*b/(c/d)=24) printf(%1.0f*%1.0f/(%1.0f/%1.0f)=24n
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1