项目4.1穷举法-百元买百鸡

原创 2016年03月20日 12:14:17
/*
*copyright (t) 2016,烟台大学计算机学院
*All rights reserved.
*文件名称:main.cpp
*作者:郝昱猛
*完成日期:2016年3月20日
*版本号:v1.0
*问题描述:

百钱百鸡问题
中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,
鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?
提示:设鸡翁、鸡母、鸡雏的个数分别为 x,y,z,题意给定共 100钱要买百鸡,若全买公鸡最多
买 20只,显然  x的值在 0~20之间;同理,y的取值范围在   0~33之间,可得到下面的不定方程:
5x+3y+z/3=100
x+y+z=100
所以此问题可归结为求这个不定方程的整数解。
由程序设计实现不定方程的求解与手工计算不同。在分析确定方程中未知数变化范围的前提下,
可通过对未知数可变范围的穷举,验证方程在什么情况下成立,从而得到相应的解。
引申:这类求解不定方程的实现,各层循环的控制变量直接与方程未知数有关,且采用对未知
数的取值范围上穷举和组合的方法来复盖可能得到的全部各组解。如果要采取技巧,往往是根据题
意,更合理地设置循环控制条件来减少这种穷举和组合的次数,提高程序的执行效率,需要具体问
题具体分析。*/
 #include<iostream>
using namespace std;
int  main()
{
/* code */
int gong,mu,you;
for (gong=0; gong< 20; gong++)
{
/* code */
for(mu=0;mu<33;mu++)
{
you=100-gong-mu;
if((gong*5)+(mu*3)+(you/3)==100&&you%3==0)
cout << "公鸡有"<<gong<<"母鸡有"<<mu<<"鸡雏有"<<you<<endl;
}
}
return 0;
}
运行结果:

穷举法解决百钱买百鸡问题

/*  *Copyright(c)2014,烟台大学计算机与控制工程学院  *All rights reserved.  *文件名称:asd.cpp  *作    者:綦鹏  *完成日期:2...
  • lupinlll
  • lupinlll
  • 2016年03月23日 20:18
  • 849

《JAVA常用算法手册》 算法经典题 1.百元买百鸡

百元买百鸡 简化题目:公鸡5文/只,母鸡3文/只,小鸡3只/文,用100文买100只鸡,应该怎么买? ===========================================...
  • qq_30258957
  • qq_30258957
  • 2016年03月01日 15:53
  • 1840

百元买百鸡(C++实现)

#include using namespace std; void main(void) {     int a,b,c;     //char DD,EE,FF;     for (a...
  • hello_myhome
  • hello_myhome
  • 2015年07月24日 15:47
  • 1572

基础算法题-----百元买百鸡

基础算法—–百元买百鸡题目:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱,用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少只刚好凑足100文钱。首先来分析一下: ...
  • qq_33531634
  • qq_33531634
  • 2016年05月06日 02:58
  • 455

python 百元买百鸡

百钱买百鸡的问题算是一套非常经典的不定方程的问题,题目很简单:公鸡5文钱一只,母鸡3文钱一只,小鸡3只一文钱, 用100文钱买一百只鸡,其中公鸡,母鸡,小鸡都必须要有,问公鸡,母鸡,小鸡要买多少...
  • lixiangyong123
  • lixiangyong123
  • 2017年02月13日 14:40
  • 239

用for循环或while循环来解决百钱买百鸡问题

题目: 有100块钱要买100只鸡 其中 公鸡 5元一只 母鸡 3元一只 小鸡 一元3只 有几种买鸡的方法? 用for循环 int add = 0;             for (int j...
  • gongth_12
  • gongth_12
  • 2013年02月27日 17:41
  • 7828

第四次上机实验 用穷举法解决百钱百鸡问题

一 问题  鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何? 代码  二 运行结果 三 心得体会...
  • lhy2017
  • lhy2017
  • 2017年04月21日 14:48
  • 454

百钱买百鸡(穷举法)

#include #include int main() { int i,j,k; printf("公鸡,母鸡,小鸡所有可能的值分别为:\n"); for(i=0;i...
  • XG17_38241417150
  • XG17_38241417150
  • 2018年01月03日 10:47
  • 72

VFP趣味编程:百钱买百鸡

公鸡3元一只,母鸡5元一只,小鸡1元三只。100元钱买100只鸡,请算出公鸡、母鸡、小鸡的数目。思路分析:题目包含的条件有两个:一是共买了100支鸡,二是共花了100元钱。我们做最极端的假设,公鸡可能...
  • cdbqss1
  • cdbqss1
  • 2007年03月30日 23:00
  • 3397

C++实验4:百钱买百鸡问题

一。问题及代码/* * 文件名称:aaaa.cpp * 作 者:andy * 完成日期:2016年 4 月 25 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: ...
  • z470661059
  • z470661059
  • 2016年04月26日 20:03
  • 1694
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:项目4.1穷举法-百元买百鸡
举报原因:
原因补充:

(最多只允许输入30个字)