如图,我们给柱子排个序,从1到8,
#include
int main()
{
int a,b,c,d,e,f,g,h;
int a1=0,b1=0,c1=0,d1=0,e1=0,f1=0,g1=0,h1=0; //需要我们改的句子
int a2,b2,c2,d2,e2,f2,g2,h2;
for(a=0;a<=1;a++)
{
for(b=0;b<=1;b++)
{
for(c=0;c<=1;c++)
{
for(d=0;d<=1;d++)
{
for(e=0;e<=1;e++)
{
for(f=0;f<=1;f++)
{
for(g=0;g<=1;g++)
{
for(h=0;h<=1;h++)
{
a2=h+a+b+a1;
b2=a+b+c+b1;
c2=b+c+d+c1;
d2=c+d+e+d1;
e2=d+e+f+e1;
f2=e+f+g+f1;
g2=f+g+h+g1;
h2=g+h+a+h1;
if(((a2==0)||(a2==2)||(a2==4))&&((b2==0)||(b2==2)||(b2==4))&&((c2==0)||(c2==2)||(c2==4))&&((d2==0)||(d2==2)||(d2==4))
&&((e2==0)||(e2==2)||(e2==4))&&((f2==0)||(f2==2)||(f2==4))&&((g2==0)||(g2==2)||(g2==4))&&((h2==0)||(h2==2)||(h2==4)))
printf("%d%d%d%d%d%d%d%d\n",a,b,c,d,e,f,g,h);
}
}
}
}
}
}
}
}
}
这一段算是程序
柱子1到8对应参数a到h和a1到h1;
把柱子分为两种状态,空心和实心,对应参数状态0和1
例如2,5,8三根柱子实心,其余空心,那么我们需要改的句子变为int a1=0,b1=1,c1=0,d1=0,e1=1,f1=0,g1=0,h1=1;
然后运行
结果输出为01011101
那么意思让我们按序号为0的柱子,此例为第一根,第三根,和第七根
如果按完过后柱子是全部空心,那么把柱子挨个按一遍就行了
下面网盘链接里装的是一个单独的c语言编译器可以运行使用一下
链接:https://pan.baidu.com/s/1V9p3dwFkygn_5k8tJhTFBg 密码:s8um
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
如果上面的没看懂,嗯,按照我说的来
第一步
给柱子排序,设置实心是1,空心为0,那么此图就为00000000
第二步
下载软件安装并运行
链接为链接:https://pan.baidu.com/s/1sOYhL8zB-sNWjipPAhQlWA 密码:kj0j
第三步
运行软件,打开源文件
第四步编译并运行按F11
第五步,
按提示输入数字,并根据输出数字按下柱子
用户评论