您的位置:首页 > 编程语言 > C语言/C++

古代 经典问题之鸡兔同笼

2014-03-14 11:13 253 查看
这是一个鸡兔同笼的问题,只需输入鸡的数目和头的数目即可求出鸡和兔分别为多少,并却在输入不合理时会自动报错。
 
/**********************
**鸡兔同笼问题C++程序**
**********************/

#include<iostream>
using namespace std;
int main()
{
int a,b,tou,jiao;
cout<<"请输入头的数目"<<endl;
cin>>tou;
cout<<"请输入脚的数目"<<endl;
cin>>jiao;
if(jiao>=2*tou&&jiao%2==0)
{
b=jiao/2-tou;
a=tou-b;
cout<<"鸡的数目为:"<<a
<<"兔的数目为:"<<b
<<endl;
}
else
cout<<"输入错误"<<endl;

return 0;
}


这个程序不完美的地方在于只能计算一次,稍作改进可以无数次计算,按指定键退出。

改进后程序如下:

// jitutonglong.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include<iostream>
using namespace std;
int main(int argc, char* argv[])
{

int a,b,tou,jiao,key=1;
char exit;
while(key)
{
cout<<"请输入头的数目"<<endl;
cin>>tou;
cout<<"请输入脚的数目"<<endl;
cin>>jiao;
if(jiao>=2*tou&&jiao%2==0)
{
b=jiao/2-tou;
a=tou-b;
cout<<"鸡的数目为:"<<a
<<"  兔的数目为:"<<b
<<endl;
}
else
cout<<"输入错误"<<endl;

cout<<"是否继续:enter:Y or N"<<endl;
cin>>exit;
if(exit=='n')
key=0;
else
key=1;

}
return 0;
}


其实除了键入“N”退出外,输入任意键都可以继续。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 经验