Python语言程序设计--实践教程--实验六(07题)

题目

7.甲、乙、丙、丁四人中有一人做了好事不留名。请大家编写程序,根据以下线索找出做好事的人。
甲说:不是我。
乙说:是丙。
丙说:是丁。
丁说:丙说的不对。
其中三人说的是真话,一人说的假话。

提示

(1)假设变量x表示做好事的人,则其应满足以下条件:
(x !="甲")+ (x=="丙")+(x=="丁")+(x !="丁")==3
(2)假设列表lst=["甲","乙","丙","丁"],存放了所有可能的情况。对列表lst进行遍历,对其中每一种情况进行判断,符合以上条件的即为正确答案。

参考代码

lit =["甲","乙","丙","丁"]
for i in lit:
    x = i
    if (x!="甲")+(x=="丙")+(x=="丁")+(x!="丁")==3:
       print(i+"是做好事的人。")
       break

运行结果

丙是做好事的人。

说明

此方法仅供学习参考,欢迎讨论

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值