荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: Peter (小飞侠), 信区: Program
标 题: 算24点小程序
发信站: BBS 荔园晨风站 (Thu Jan 21 21:05:17 1999), 转信
#include "stdio.h"
main()
{
int a[4];
register int i;
void round(int a[4]);
printf("Input n1,n2,n3,n4 (0<ni<11):\n")
for(i=0;i<4;i++)scanf("%d",&a[i]);
round(a);
}
void round(int a[4])
{
float b[4];
register int i,j,k;
int cal(float b[4]);
for(i=0;i<4;i++)
{
b[0]=(float)a[i];
for(j=0;j<4;j++)
{
if(j!=i)b[1]=(float)a[j];else continue;
for(k=0;k<4;k++)
{
if(k!=j&&k!=i)b[2]=(float)a[k];else continue;
b[3]=(float)a[6-i-j-k];
if(cal(b)) exit(1);
}
}
}
printf("No answer!");
}
int cal(float b[4])
{
float c(float a, float b, int i);
void print(float a, float b,float c,int i);
register int j,i,k;
float x,y,z;
for(i=0;i<6;i++)
{
x=c(b[0],b[1],i);
for(j=0;j<6;j++)
{
y=c(x,b[2],j);
for(k=0;k<6;k++)
{
z=c(y,b[3],k);
if((z-24)<0.001&&(z-24)>-0.001)
{
print(b[0],b[1],x,i);
print(x,b[2],y,j);
print(y,b[3],z,k);
return(1);
}
}
}
}
for(i=0;i<3;i++)
{
x=c(b[0],b[1],i);
for(j=0;j<3;j++)
{
y=c(b[2],b[3],j);
z=x*y;
if((z-24)<0.001&&(z-24)>-0.001)
{
print(b[0],b[1],x,i);
print(b[2],b[3],y,j);
print(x,y,z,3);
return(1);
}
}
}
for(i=3;i<6;i++)
{
x=c(b[0],b[1],i);
for(j=3;j<6;j++)
{
y=c(b[2],b[3],j);
for(k=0;k<3;k++)
{
z=c(x,y,k);
if((z-24)<0.001&&(z-24)>-0.001)
{
print(b[0],b[1],x,i);
print(b[2],b[3],y,j);
print(x,y,z,k);
return(1);
}
}
}
}
return(0);
}
float c(float a,float b,int i)
{
switch(i)
{
case 0:return(a+b);
case 1:return(a-b);
case 2:return(b-a);
case 3:return(a*b);
case 4:return(a/b);
case 5:if((int)(a*100))
return(b/a);
else
return(0);
}
}
void print(float a,float b,float c,int i)
{
switch(i)
{
case 0:printf(" %5.2f+%5.2f=%5.2f",a,b,c);break;
case 1:printf(" %5.2f-%5.2f=%5.2f",a,b,c);break;
case 2:printf(" %5.2f-%5.2f=%5.2f",b,a,c);break;
case 3:printf(" %5.2f*%5.2f=%5.2f",a,b,c);break;
case 4:printf(" %5.2f/%5.2f=%5.2f",a,b,c);break;
case 5:printf(" %5.2f/%5.2f=%5.2f",b,a,c);break;
}
--
※ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 192.168.1.3]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店