[求助]用计算机求组合!
一道组合 问题 如下:
给你1圆 5圆 5角面值的RMB 要求用这3种面值的钱共100张 组成100圆RMB 并且每种面值至少有1张
偶是自学者 自己没法解决 只列出2个方程 设1圆的a张,5圆的b张,5角的c张不 a+b+c=100;1*a+5*b+0.5*c=100;
想了几天了 实在没法 请求前辈们 指点 先谢谢
#include<stdio.h>
void main()
{
int a,b,c;
for (a=1;a<=100;a++)
for(b=1;b<=100;b++)
for(c=1;c<=100;c++)
if((a+b+c==100)&&(1*a+b*5+c*0.5==100))
printf("%4d%4d%4d\n",a,b,c);
}
初学者用这种最笨的方法就是了哦
#include<stdio.h>
void main()
{
int a,b,c;
for (a=1;a<=100;a++)
for(b=1;b<=100;b++)
for(c=1;c<=100;c++)
if((a+b+c==100)&&(1*a+b*5+c*0.5==100))
printf("%4d%4d%4d\n",a,b,c);
}
初学者用这种最笨的方法就是了哦
呵呵,循环能省则省,
#include<stdio.h>
void main()
{
int a,b,c;
for (a=1;a<=100;a++)
for(b=1;b<=100;b++)
{
c=100-a-b;
if(1*a+b*5+c*0.5==100)
printf("%4d%4d%4d\n",a,b,c);
}
getch();
}
[此贴子已经被作者于2006-5-1 16:52:25编辑过]