jxswula 2021-10-22 17:20 采纳率: 100%
浏览 32
已结题

问python五人分鱼解题思路区别

各位python俊男靓女们!第一种解题方法错在哪了,为什么运行出来的结果差距这么大!

#五人分鱼解题1
def fishnum(i):
    for y in range(5):
        if (i - 1) % 5 == 0:
            i=(i - 1) / 5 * 4
            return True
            continue
        else:
            return False
            break
a=1
while True:
    i=a
    if fishnum(i):
        print("至少{}条鱼".format(a))
        break
     else:
       a+=1
       continue
#output
至少1条鱼

```python
#五人分鱼解题2
a=1
while True:
    total,enough=a,True
    for y in range(5):
        if (total - 1) % 5 == 0:
            total=(total - 1) / 5 * 4

        else:
            enough=False
            break
    if enough:
        print("至少{}条鱼".format(a))
        break
    else:
       a+=1
       continue
#output
至少3121条鱼


  • 写回答

1条回答 默认 最新

  • 於黾 2021-10-22 17:28
    关注

    你仔细看逻辑关系
    第二种算法里面循环5次,total是不断在循环,不断增加的
    而第一种,循环一次,直接return了
    说白了,第二种要求5个人都分到鱼,而第一种只要求第一个人分到鱼,后面的人不管了,那能一样吗

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月31日
  • 已采纳回答 10月23日
  • 创建了问题 10月22日

悬赏问题

  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?