⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 to24.c

📁 算24的C代码
💻 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 + -