真要这么问就是这么回答,因为编程语言就是这么执行的,执行到最后一步,我们不管是谁说,只要能运行就默认执行了,他说了那就是对了,执行到最后一步那就是最后一步了。我用编程语言简单表达:
//我初始化三个人,默认宽竖亏都没说谎
public const string s="没说谎";
public const string l="说谎"
public string 张三=s
public string 李四纤饥=s
public string 王五=s
//开始告密事件
private void says()
{
李四=l;//说过了李四是说谎慎神
王五=l //说过了王五是说谎
张三=l //说过了张三是说谎
李四=l //再次赋值说过了李四还是在说谎
print 张三,李四,王五
}
共有甲、乙、丙三人,其中一个是诈骗犯、一个说真话、一个说假话。已知三个条件:
1、会计说:甲是程序员
2、司机说:丙不是诈骗犯
3、程序员:司机不是诈骗犯
则有三种可能:
① 1真;2、3假
此时,甲是程序员;丙、司机是诈骗犯,段汪即丙为司机;那么乙只能是会计,且说了1这句真话。
② 1、3假;2真
此时,甲是司机或会计;丙不是诈骗犯;司机是诈骗犯。
但司机说了2,是真话,矛盾,此可能排除。
③ 1、2假;3真
此时,甲是司机或会计;丙是诈骗犯;司机不是诈袭燃孝骗犯,且程序员说了真话3,为好人。
我们可以推出丙,是会计,是诈骗犯。那么甲只能是司机;所以拍稿乙是程序员,说了真话。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)