小学二年级 24点 五个六怎么算

\u5c0f\u5b66\u4e8c\u5e74\u7ea7\u768424\u70b9\uff0c\u662f\u600e\u4e48\u7b97\u7684

\u628a\u4e0b\u9762\u4ee3\u7801\u6253\u8fdbVC6\u7f16\u8bd1\u5668 \u4f60\u4f1a\u795e\u5668\u7684\u53d1\u73b024\u70b9\u6beb\u65e0\u538b\u529b
#include
#include
float data[4]={0};
float data_num[4]={0};
int data_1[4]={0};
char fu[5]={' ','+','-','*','/'};//1=+ 2=- 3=* 4=/
float as[100][7]={0};
int st=-1;

void print_1(int n)
{
if(as[n][2]>99)
printf("(%.f%c%.f)%c(%.f%c%.f)\n",as[n][0],fu[((int)as[n][2])-100],as[n][1],fu[((int)as[n][6])-100],as[n][3],fu[((int)as[n][5])-100],as[n][4]);
else
printf("%.f%c(%.f%c(%.f%c%.f))\n",as[n][0],fu[((int)as[n][6])-100],as[n][1],fu[((int)as[n][5])-100],as[n][2],fu[((int)as[n][4])-100],as[n][3]);
}

void print()
{
int j=0;
for(int i=0;i<st+1;i++)
{
print_1(i);
printf("\n");
}
}


float make_1_do1(int a[],int n)
{
if(n==0)
return data_num[4-n-1];
if(a[n-1]==1)
return make_1_do1(a,n-1)+data_num[4-n-1];
if(a[n-1]==2)
return data_num[4-n-1]-make_1_do1(a,n-1);
if(a[n-1]==3)
return make_1_do1(a,n-1)*data_num[4-n-1];
if(a[n-1]==4)
return data_num[4-n-1]/make_1_do1(a,n-1);
}



int make_c(int a[])
{
for(int i=0;i<st+1;i++)
if(as[i][4]==a[0]+100.0&&as[i][5]==a[1]+100.0&&as[i][6]==a[2]+100.0)
return 1;
return 0;
}


float make_1_do2(int a[])
{
if(!(a[0]2))
return 0;
float a1,a2,a3;

if(a[0]==1)
a1=data_num[0]+data_num[1];
else if(a[0]==2)
a1=data_num[0]-data_num[1];


if(a[1]==1)
a2=data_num[2]+data_num[3];
else if(a[1]==2)
a2=data_num[2]-data_num[3];


if(a[2]==3)
return a1*a2;
else if(a[2]==4)
return a1/a2;
}

int make_d(int a[])
{
for(int i=0;i<st+1;i++)
if(as[i][2]==a[0]+100.0&&as[i][5]==a[1]+100.0&&as[i][6]==a[2]+100.0)
return 1;
return 0;
}

void make_1()
{
int a[3]={0};
float s=0;
for(a[0]=1;a[0]<5;a[0]++)
for(a[1]=1;a[1]<5;a[1]++)
for(a[2]=1;a[2]<5;a[2]++)
{
s=make_1_do1(a,3);
if(s>23.9999&&s<24.0001)
{
if(make_c(a))
continue;
st++;
as[st][0]=data_num[0];
as[st][1]=data_num[1];
as[st][2]=data_num[2];
as[st][3]=data_num[3];
as[st][4]=a[0]+100.0;
as[st][5]=a[1]+100.0;
as[st][6]=a[2]+100.0;
}



s=make_1_do2(a);
if(s>23.9999&&s<24.0001)
{
if(make_d(a))
continue;
st++;//printf("ff");
as[st][0]=data_num[0];
as[st][1]=data_num[1];
as[st][2]=a[0]+100.0;
as[st][3]=data_num[2];
as[st][4]=data_num[3];
as[st][5]=a[1]+100.0;
as[st][6]=a[2]+100.0;
}

}
}


void fun(int u)
{
if(u==5)
{

make_1();
return;
}
for(int i=0;i<4;i++)
{
if(data_1[i]==0)
{ data_1[i]=1;
data_num[u-1]=data[i];
fun(u+1);
data_1[i]=0;
}
}
}


int main()
{
printf("\u7528\u6237\u8bf7\u8f93\u5165\uff1a\n");
for(int i=0;i<4;i++)
{
printf("\u7b2c%d\u4e2a\u6570\u662f\uff1a",i+1);
scanf("%f",&data[i]);
}
fun(1);
print();
_getch();
return 0;
}

1\uff0c9+3=12\uff0c4-2=2\uff0c12\u00d72=24
2\uff0c7\u00d71=7\uff0c8+9=17\uff0c17+7=24
3\uff0c5+3=8\uff0c6\u00f73=3\uff0c3\u00d78=24

(6+6)/6 *(6+6)

{6-[(6+6)/6]}*6=24
分开算:
6+6=12
12/6=2
6-2=4
4*6=24

(6+6+6)/6*(6*6)=24或者(6+6)/6*(6+6)=24或者[6-(6+6)/6]*6=24

(6+6)×(6+6)÷6=24

(6+6)×(6+6)÷6=24

(6+6)÷6 ×(6+6)

扩展阅读:扫一扫题目出答案 ... 24点题目大全 含答案 初一 ... 小学生速算24点题目 ... 1 4 9找规律二年级 ... 3 7 5=1~10答案 ... 电缆口诀表十下五 ... 一扫卷子全出答案 ... 3 5 8找规律二年级 ... 24点必考题100题 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网