/*
* 文件名称:Ex1-1.cpp
* 作 者:零梅
* 完成日期:2016 年 6 月 3日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:无
* 问题描述:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
* 程序输出:略
* 问题分析:略
* 算法设计:略
*/
一、程序与代码:
#include <iostream>
using namespace std;
void main()
{
double a,b,c;
for(a=0;a<=20;a++)
{
for(b=0;b<34;b++)
{
c=100-a-b;
if((5*a+b*3+c/3)==100)
{
cout<<"鸡翁"<<a<<"只,"<<"鸡母"<<b<<"只,"<<"鸡雏"<<c<<"只。"<<endl;
}
}
}
}
using namespace std;
void main()
{
double a,b,c;
for(a=0;a<=20;a++)
{
for(b=0;b<34;b++)
{
c=100-a-b;
if((5*a+b*3+c/3)==100)
{
cout<<"鸡翁"<<a<<"只,"<<"鸡母"<<b<<"只,"<<"鸡雏"<<c<<"只。"<<endl;
}
}
}
}
二、运行结果:
三、心得体会:
编写C++程序的时候不能心急,遇到问题时要冷静思考,越心急越容易出错误。
四、知识点总结:
可用循环的嵌套
(1)输出1000-10000的个位与千位相等的质数
#include<iostream>
using namespace std;
int ss(int n)
{
int i;
for(i=2;i<n;i++)
{
if(n%i==0)
return 0;
break;
}
return 1;
}
void main()
{
int ss(int n);
int i,j,k;
for(i=1000;i<10000;i++)
{
if(ss(i))
{
j=k=0;
j=i/1000;
k=i%10;
if(j==k)
cout<<i<<" ";
}
}
}
using namespace std;
int ss(int n)
{
int i;
for(i=2;i<n;i++)
{
if(n%i==0)
return 0;
break;
}
return 1;
}
void main()
{
int ss(int n);
int i,j,k;
for(i=1000;i<10000;i++)
{
if(ss(i))
{
j=k=0;
j=i/1000;
k=i%10;
if(j==k)
cout<<i<<" ";
}
}
}
(2)
编程序输出。
#include<iostream>
using namespace std;
void main()
{
int i,j;
for(i=1;i<7;i++)
{
for(j=6;j>i;j--)
cout<<" ";
if(i==1)
cout<<" *";
else if(i==6)
cout<<"*************";
else
{
cout<<"*";
for(j=1;j<2*i;j++)
cout<<" ";
cout<<"*";
}
cout<<endl;
}
}
(3)一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3,再如8的因子和是7(即1+2+4),8不是完数。编程找出1000以内的所有完数
#include<iostream>
using namespace std;
void main()
{
int a,b,c;
for(a=2;a<1000;a++)
{
c=0;
for(b=1;b<=a/2;b++)
{
if(a%b==0)
c+=b;
}
if(c==a)
cout<<a<<" ";
}
cout<<endl;
}
(4)一个百万富翁遇到一个陌生人,陌生人找他谈一个换钱的计划,该计划如下:我每天给你十万元,而你第一天只需给我一分钱,第二天我仍给你十万元,你给我两分钱,第三天我仍给你十万元,你给我四分钱,....,你每天给我的钱是前一天的两倍,直到满一个月(30天),百万富翁很高兴,欣然接受了这个契约。请编程序,通过计算说明,这个换钱计划对百万富翁是否是个划算的交易。
#include<iostream>
using namespace std;
void main()
{
double a,b,c;
b=100000;
c=0.01;
for(a=2;a<=30;a++)
{
b=b+100000;
c=c+c*2;
cout<<"第"<<a<<"天,富翁给陌生人"<<b<<"元"<<endl;
cout<<"第"<<a<<"天,陌生人给富翁"<<c<<"元"<<endl;
}
if(b<c)
cout<<"富翁赚了,陌生人亏了";
else if(b>c)
cout<<"陌生人赚了,富翁亏了";
else
cout<<"两人不赚不亏。";
cout<<endl;
}