c++编写100 由1、2、5几种组合方式?
请问大侠们:c++编写100 由1、2、5几种组合方式?谢谢了
2011-04-22 18:51
2011-04-22 20:32
程序代码:#include <stdio.h>
int main(void)
{
int sum = 0;
int t, data;
printf("输入要处理的数据: ");
scanf("%d", &data);
for( t = 1; t < (data+4)/5; ++t )
{
sum += (data - 5*t - 1)/2;
}
printf("总的组合个数: %d\n", sum );
return 0;
}
2011-04-22 21:21
程序代码:#include <stdio.h>
void show(int x, int y, int z)
{
static i=1;
printf("%d ", i++);
while(x--)
{
printf("5");
}
while(y--)
{
printf("2");
}
while(z--)
{
printf("1");
}
printf("\n");
}
void deal()
{
int x, y, z;
for (x=1; x<20; ++x)
{
for (y=1; y<49; ++y)
{
for (z=1; z<94; ++z)
{
if (z+y*2+x*5 == 100)
{
show(x, y, z);
}
}
}
}
}
int main(void)
{
int sum = 0;
int t, data;
printf("输入要处理的数据: ");
scanf("%d", &data);
for( t = 1; t < (data+4)/5; ++t )
{
sum += (data - 5*t - 1)/2;
}
printf("总的组合个数: %d\n", sum );
deal();
return 0;
}
2011-04-22 21:35
程序代码:#include<iostream.h>
#include<iomanip.h>
int main ()
{
int i,j,k;
int counts=0;
for(i=0;i<=100;i++)
for(j=0;j<=50;j++)
for(k=0;k<=20;k++)
if(i+2*j+5*k==100)
{
cout<<i<<setw(5)<<"个1, "<<j<<setw(5)<<"个2, "<<k<<setw(5)<<"个5组成"<<endl;
counts++;
}
cout<<"100 由1、2、5几种组合方式有"<<counts<<endl;
return 0;
}
2011-04-23 21:21