📄 to24.c
字号:
#include "stdio.h"
int Total=0;
void calu(float,float,float,float);
void main(void)
{
int i,j,k,l;
int a,b,c,d;
float x[4];
int f[4];
printf("Please Input:\n");
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
printf("c=");
scanf("%d",&c);
printf("d=");
scanf("%d",&d);
x[0]=(float)a;
x[1]=(float)b;
x[2]=(float)c;
x[3]=(float)d;
f[0]=0;
f[1]=0;
f[2]=0;
f[3]=0;
for(i=0;i<4;i++)
{
f[i]=1;
for(j=0;j<4;j++)
{
if(f[j]!=0)continue;
f[j]=1;
for(k=0;k<4;k++)
{
if(f[k]!=0)continue;
f[k]=1;
for(l=0;l<4;l++)
{
if(f[l]!=0)continue;
f[l]=1;
/*printf("%d\t%d\t%d\t%d\n",i,j,k,l);*/
calu(x[i],x[j],x[k],x[l]);
f[l]=0;
}
f[k]=0;
}
f[j]=0;
}
f[i]=0;
}
if(Total==0)printf("No Solution!\n");
}
void calu(float ia,float ib,float ic,float id)
{
float r;
int i,j,k;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
for(k=0;k<4;k++)
{
r=ia;
if(i==0)r+=ib;
else if(i==1)r-=ib;
else if(i==2)r*=ib;
else if(i==3)r/=ib;
if(j==0)r+=ic;
else if(j==1)r-=ic;
else if(j==2)r*=ic;
else if(j==3)r/=ic;
if(k==0)r+=id;
else if(k==1)r-=id;
else if(k==2)r*=id;
else if(k==3)r/=id;
if(r==24.0 || r==-24.0)
{
if(Total==0)printf("List Solution:\n");
Total++;
printf("%d:\t",Total);
printf("(((");
printf("%d",(int)ia);
if(i==0)printf("+");
else if(i==1)printf("-");
else if(i==2)printf("x");
else if(i==3)printf("/");
printf("%d",(int)ib);
printf(")");
if(j==0)printf("+");
else if(j==1)printf("-");
else if(j==2)printf("x");
else if(j==3)printf("/");
printf("%d",(int)ic);
printf(")");
if(k==0)printf("+");
else if(k==1)printf("-");
else if(k==2)printf("x");
else if(k==3)printf("/");
printf("%d",(int)id);
printf(") = %d\n",(int)r);
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -