这个可以用C语言编程解决(方法有120种):
以下是C语言代码
#include
void setBox()
{
static int sum=0;
int a1,a2,a3;
for(a1=1;a1<=15;a1++)
for(a2=2;a2<=16;a2++)
for(a3=3;a3<=17;a3++)
if(a1+a2+a3==20)
{
sum++;
printf("------------------\n");
printf("编号为1的盒子有%d个小球\n",a1);
printf("编号为2的盒子有%d个小球\n",a2);
printf("编号为3的盒子有%d个小球\n",a3);
}
printf("方法有%d种\n",sum);
}
void main()
{
setBox();
}
1号盒子至少1个,2号盒子至少2个,3个盒子至少3个,则先拿出6球分别放入3个盒子,那么剩下的14个球任意摆放,方法有3的14次方个。
先拿出3个,剩下17个放入三个盒子里,每个球有3种放法,自己会算了吧!