首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

高手帮帮忙啊解决方法

2012-05-13 
高手帮帮忙啊~~浙江工商大学校园里绿树成荫,环境非常舒适,因此也引来一批动物朋友来此居住。童心未泯的redr

高手帮帮忙啊~~
浙江工商大学校园里绿树成荫,环境非常舒适,因此也引来一批动物朋友来此居住。 

童心未泯的redraiment就经常带些碎面包什么的去广场喂鸽子和兔子,并和它们玩耍。一点也不像大学生,还是一副老不正经的样子,呵呵。 

随着鸽子和兔子数目的增多,redraiment带的那点食物已经不够它们瓜分了。为了能让自己的好朋友吃的饱饱的,redraiment决定统计一下有多少只鸽子和有多少只兔子,以便带来足够的食物。一、二、三、四、五...他开始数了。 

现在,他已经知道有这些鸽子和兔子一共有n个头和m只脚。请你帮他写个程序计算一下一共有多少只鸽子和兔子。 

输入包括多组数据。 
每行包括2个数据:n、m(代表上面题目中提到的意思1≤n, m≤230)。 
n、m都是整数。 
输入以0 0作为结束 

每组数据的输出都只有一行,分别是鸽子的数量和兔子数量。 
如果输入的测试数据不能求得结果,那肯定是redraiment这个马大哈数错了,就输出"Error"提示他。 

输入: 
35 94 
1 3 
0 0 
输出: 
23 12 
Error

[解决办法]
鸡兔问题,解方程
[解决办法]
#include <iostream>
using namespace std;
void main()
{
int n;
int m;
cin>>n;
cin>>m;
if((m-2*n) % 2 != 0)//判断是否有半条兔子或鸽子出现。
{
cout<<"error"<<endl;
return;
}
cout<<(m - 2*n)/2<<" ";
cout<<(4*n - m)/2<<endl;
}

一组数据输出,多组的话可以定义个数组类似了~

[解决办法]
解方程问题
[解决办法]
用计算机的思维应该是这样的:
#include <iostream>
using namespace std;
int main()
{
int iHead,iLeg;
cin>>iHead>>iLeg;
bool bHave = false;
for (int iPigeon = 0; iPigeon<=iHead; ++iPigeon) {
int iRabbit = iHead-iPigeon;
if ((iRabbit<<2)+(iPigeon<<1) == iLeg) {
bHave = true;
cout<<iPigeon<<" "<<iRabbit<<endl;
}
}
if (bHave) 
cout<<"0 0"<<endl;
else
cout<<"Error"<<endl;
return 0;
}

热点排行