猫史档案馆


【Python作品分享】鸡兔同笼【作品秀】

用户:梁意森的QQ号梁意森的QQ号查看:0 回复:2 评论:0 创建时间:2020-12-10T20:31:40


【作品展示】

center_image

 

【作品介绍】

先不要纠结这个LOGO

从A站搞来的

他是一个计算器,可以快速计算鸡兔同笼问题,还可以基因变异,让兔子和鸡的脚数量变化,如果发现错误,会强迫你重新输入数据,同样需要easygui模块

 

【作品源代码】

import easygui


#开始进入Python的世界
mmar = str('1')
print(mmar)
# 获取总共的头数
heads = int(easygui.enterbox("一共有几个头?!"))
# 获取总共的脚数
feet = int(easygui.enterbox("一共有几只脚?!"))
# 为了应对一些其他情况,可以自定义脚的数量
rf = int(easygui.enterbox("兔有几只脚?!"))
# 鸡也是一样
tf = int(easygui.enterbox("鸡有几只脚?!"))
# 通过假设法计算,先假设全部是兔子
a = (rf * heads)
# 获得一共给每只鸡多加了几支脚
b = (a - feet)
# 用总共减去一个多了多少,我们才可以算出有几只鸡
c = (b / (rf - tf))
# 怎么多只鸡,一减,剩下的是兔子
d = (heads - c)
f = ""
# 为了保证不会出现任何差错,我们必须这样
while (rf <= tf or heads == 0 or feet == 0 or rf == 0 or tf == 0 or heads == feet or type(a) == f or type(b) == f or type(c) == f or type(d) == f or c <= 0 or d <= 0):
    # 重新获取头数
    heads = int(easygui.enterbox("一共有几个头?!"))
    # 重新获取脚数
    feet = int(easygui.enterbox("一共有几只脚?!"))
    # 重新获取兔子的脚数
    rf = int(easygui.enterbox("兔有几只脚?!"))
    # 重新获取鸡的脚数
    tf = int(easygui.enterbox("鸡有几只脚?!"))
    # 通过假设法计算,先假设全部是兔子
    a = (rf * heads)
    # 获得一共给每只鸡多加了几支脚
    b = (a - feet)
    # 用总共减去一个多了多少,我们才可以算出有几只鸡
    c = (b / (rf - tf))
    # 怎么多只鸡,一减,剩下的是兔子
    d = (heads - c)
# 显示出答案
easygui.msgbox((((('鸡有' + str(int(c))) + '只,兔有') + str(int(d))) + '只'))

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
芙兰朵露_斯卡雷特芙兰朵露_斯卡雷特

全是bug......

点赞0


评论


机灵的花粉蝶faIw机灵的花粉蝶faIw

#鸡兔共x只,脚共有y只
#每只鸡a只脚,每只兔b只脚(a<b)
#砍断每只鸡和兔的a只脚
#这样每只鸡有0只脚,每只兔有(b-a)只脚
#鸡兔脚的数量共只剩(x-ay)只脚
#且由此可知这些脚都是兔剩下的脚
#用剩下脚的数量(x-ay)除以剩下每只兔脚的数量(b-a)
#这样就得到了兔的数量n
#鸡的数量m=x-n

#老师没教这种方法吧!

点赞0


评论