小学数学题一则1…9=100
Posted kail77
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小学数学题一则1…9=100相关的知识,希望对你有一定的参考价值。
1 2 3 4 5 6 7 8 9=100 填入+=*/使得结果=100 不用括号
好像没有特别好的通用解法,编程穷举了一下
int Algorithm_100()
{
int i,j,n,nRet=0;
float fnum[32],fres;
TCHAR szOperate[]="+-x/",szOper[10]={0},szText[256]={0};
for(i=0; i<65536; i++)//8个运算符,4种可能,8的4次方=65536
{
n = 0;
fnum[0] = 1;
for(j=0; j<8; j++)
{
szOper[j] = szOperate[(i>>(j*2))&3];
if(szOper[j] == ‘x‘)
{
fnum[n] *= (j+2);
} else if(szOper[j] == ‘/‘) // /
{
fnum[n] /= (j+2);
} else // + -
{
fnum[++n] = szOper[j];
fnum[++n] = j+2;
}
}
fres = fnum[0];
// cac result
for(j=1; j<n; j+=2)
{
if(fnum[j] == ‘+‘) //+
fres += fnum[j+1];
else
fres -= fnum[j+1];
}
if(fres == 100)
{
for(j=0; j<9; j++)
{
szText[j*2+0] = ‘1‘+j;
szText[j*2+1] = szOper[j];
}
TRACE(szText);// 输出结果
nRet++;
}
}
return nRet;
}
结果如下:
1x2x3x4+5+6+7x8+9
1-2+3x4x5+6x7+8-9
1-2+3x4x5-6+7x8-9
1+2+3+4+5+6+7+8x9 最容易想到的一个
1x2x3+4+5+6+7+8x9
1-2x3+4x5+6+7+8x9
1+2x3+4x5-6+7+8x9
1-2x3-4+5x6+7+8x9
1+2-3x4+5x6+7+8x9
1+2x3x4x5/6+7+8x9
1x2x3x4+5+6-7+8x9
1-2x3-4-5+6x7+8x9
1+2-3x4-5+6x7+8x9
1+2+3-4x5+6x7+8x9
1x2x3-4x5+6x7+8x9
以上是关于小学数学题一则1…9=100的主要内容,如果未能解决你的问题,请参考以下文章
小学三年级数学题!用数字 1 到 8 组成两个三位数使其和为 1000