python算法:鸡兔同笼
一,for循环:
1,功能:重复执行同一段代码
语法:
for index in range(n):
# 循环体代码
index : 用来依次接收可迭代对象中的元素的变量名
range()函数:负责返回整数序列
流程图:
2,应用
range可以同时指定start 和stop,用for遍历并打印
1
2
3
4
|
# 指定 start和stop # print的参数 end=" " 用来使打印不换行 for num in range ( 3 , 9 ): print (num, end = " " ) |
运行结果:
3 4 5 6 7 8
说明:刘宏缔的架构森林—专注it技术的博客,
网址:https://imgtouch.com
本文: https://blog.imgtouch.com/index.php/2024/03/13/python-suan-fa-ji-tu-tong-long/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,鸡兔同笼的题目与思路
1,题目
有若干只鸡兔同在一个笼子里,从上面数,有35个头,从下面数,有94只脚,
问笼中各有多少只鸡和兔?
2,思路
鸡最多35只,
兔的数量就是35-鸡
遍历时如果脚的数量==94,
则可以得到鸡和兔的数量
三,编写代码
1,通过for循环遍历
1
2
3
4
|
for chicken in range ( 0 , 36 ): # 鸡的数量最多35 rabbit = 35 - chicken # 得到兔的数量 if 2 * chicken + 4 * rabbit = = 94 : # 如果脚的数量是94 print (f '鸡:{chicken},兔:{rabbit}' ) |
运行结果:
鸡:23,兔:12
2,通过解方程直接用程序计算结果:
鸡+兔 = 35
鸡*2+兔*4 = 94
1
2
3
|
chicken = ( 35 * 4 - 94 ) / 2 rabbit = 35 - chicken print (f '鸡:{int(chicken)},兔:{int(rabbit)}' ) |
运行结果:
鸡:23,兔:12