一、利用穷举的方法解决下面的问题
百钱百鸡问题:中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
提示:设鸡翁、鸡母、鸡雏的个数分别为x,y,z,题意给定共100钱要买百鸡,若全买公鸡最多买20只,显然x的值在0~20之间;同理,y的取值范围在0~33之间,可得到下面的不定方程:
5x+3y+z/3=100
x+y+z=100
所以此问题可归结为求这个不定方程的整数解。
参考答案:
鸡翁0只,鸡母25只,鸡雏75只。
鸡翁4只,鸡母18只,鸡雏78只。
鸡翁8只,鸡母11只,鸡雏81只。
鸡翁12只,鸡母4只,鸡雏84只。
#include <iostream>
using namespace std;
int main()
{
int n=1,a,b,c;
for(a=0;a<=20;a++)
for(b=0;b<=33;b++)
for(c=0;c<=100;c++)
if(a+b+c==100&&5*a+3*b+c/3==100&&c%3==0)
cout<<n++<<":鸡翁"<<a<<"只,鸡母"<<b<<"只,鸡雏"<<c<<"只\n";
return 0;
}二
、【项目1:利用循环求和】求1000以内所有偶数的和(答案:250500)
#include <iostream>
using namespace std;
int main()
{
int i=2,sum=0;
do
{
sum=sum+i;
i=i+2;
}while(i<=1000);
cout<<"1000以内偶数的值:"<<sum<<endl;
return 0;
}
#include <iostream>
using namespace std;
int main()
{
int i=2,sum=0;
while(i<=1000)
{
sum=sum+i;
i=i+2;
}
cout<<"1000以内偶数的值:"<<sum<<endl;
return 0;
}
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int i,sum=0;
for(i=2;i<=1000;i++,i++)
sum=sum+i;
cout<<"1000以内所有偶数的和为:"<<sum<<endl;
return 0;
}
三、【项目3:乘法口诀表】编程序,输出一个乘法口诀表,形如
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6
3x3=9
#include <iostream>
using namespace std;
int main( )
{
int i,j;
cout<<" 我的小九九是"<<endl;
for(i=1;i<=9;++i)
{
for(j=1;j<=i;++j)
cout<<i<<"×"<<j<<'='<<i*j<<' ';
cout<<endl;
}
return 0;
}