当前位置:   article > 正文

Python数学问题16:百钱买百鸡_百元买鸡python

百元买鸡python

1.  问题描述

      中国古代数学家张丘建在他的《算经》中提出一个著名的“百钱百鸡问题”:一只公鸡值5钱,一只母鸡值3钱,三只小鸡值一钱,现在要用百钱买百鸡,请问公鸡、母鸡、小鸡各多少只?

2.  问题分析

       用百钱如果只买公鸡,最多可以买20只,题目要求买100只鸡,所以公鸡的数量一定在0~20之间。同理可知,母鸡的数量在0~33之间。将公鸡、母鸡和小鸡分别用cock、hen、chicken表示,则cock+hen+chicken=100。则百钱百鸡问题就可以转化成解不定式方程组:

方程1:cock + hen + chicken = 100

方程2cock * 5 + hen * 3 + chicken/3 = 100

3.  实例代码

代码1:

  1. # coding:utf8
  2. cock = 0 # cock表示公鸡,hen表示母鸡,chicken表示小鸡
  3. while cock <= 20:
  4. hen = 0
  5. while hen <=33:
  6. chicken = 100 - cock - hen
  7. if cock * 5 + hen * 3 + chicken/3 == 100:
  8. print("公鸡 ={},母鸡 ={},小鸡 ={}\n".format(cock,hen,chicken))
  9. hen += 1
  10. cock +=1

代码2:

  1. for cock in range(0, 21): # 外层循环控制公鸡数量取值范围0~20
  2. for hen in range(0, 34): # 内层循环控制母鸡数量取值范围0~33
  3. for chicken in range(0, 101): # 内层循环控制小鸡数量取值范围0~100
  4. if (cock * 5 + hen * 3 + chicken/3 == 100) and (cock + hen + chicken == 100):
  5. print("公鸡 =%2d,母鸡 =%2d,小鸡 =%2d\n" %(cock, hen, chicken))

 4.  运行结果

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/391235
推荐阅读
相关标签
  

闽ICP备14008679号