一、项目4(输出完数)
#include<iostream>
using namespace std;
int main()
{
int i,j,sum,k=0;
for(i=2;i<=1000;i++)
{
sum = 0;
for(j=1;j<=i/2;j++)
{
if(i%j==0) sum=sum+j;
}
if(sum==i)
{
cout <<i<<" "<<endl;
k++;
}
}
cout <<"1000之内有以上"<<k<<"个完数"<<endl;
return 0;
}
二、项目6(输出星号图)
输出三角图
#include<iostream>
using namespace std;
int main()
{
int i,j;
for(i=0;i<6;i++)
{
if(i<5)
{
for(j=0;j<6-i-1;j++)
cout<<" ";
cout<<"*";
for(j=0;j<i*2-1;j++)
cout<<" ";
if(i==0)
cout<<endl;
else
cout<<"*"<<endl;
}
else
for(j=0;j<i*2+1;j++)
cout<<"*";
}
cout<<endl;
return 0;
}
三、项目7(穷举法解决组合问题)
百钱百鸡问题
#include<iostream>
using namespace std;
int main()
{
int x,y,z,counter=0;
for(x=0; x<=20; x++)
for(y=0; y<=33; y++)
for(z=0; z<=300; z++)
{
if( (5*x+3*y+z*1.0/3==100)&&(x+y+z==100) )
{
counter++;
cout<<"买法"<<counter<<":"<<"鸡翁"<<x<<"只 鸡母"<<y<<"只 鸡雏"<<z<<"只"<<endl;
}
}
return 0;
}
三色球问题
#include<iostream>
using namespace std;
int main()
{
int a,b,c,counter1=0,counter2=0;
for(a=0; a<=3; a++)
for(b=0; b<=3; b++)
for(c=0; c<=6; c++)
{
if(a+b+c==8)
{
counter1++;
cout<<"取法"<<counter1<<":"<<"红球"<<a<<"只 白球"<<b<<"只 黑球"<<c<<"只"<<endl;
counter2++;
}
}
cout<<"共有"<<counter2<<"种颜色搭配"<<endl;
return 0;
}