| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 711 人关注过本帖
标题:小小的人工智能问题 求解
取消只看楼主 加入收藏
weiqiang
Rank: 2
等 级:论坛游民
帖 子:48
专家分:52
注 册:2010-10-18
结帖率:70%
收藏
已结贴  问题点数:20 回复次数:0 
小小的人工智能问题 求解
题目:在一次会议上,A说B在说假话,B说C在说假话,C说A和B在说假话。试问谁在说假话,谁在说真话。

我程序如下不知道哪出错了它好像只执行一次循环
/*判断谁在说真话谁在说假话*/
#include <stdio.h>

int main()
{
    int A;
    int B;
    int C;
    int count = 0;
   
    for (A=0; A<2; A++)
    {
        for (B=0; B<2; B++)
        {
            for (C=0; C<2; C++)
            {
                count += ((A == 1 && B == 0) || (A == 0 && B ==1));
                count += ((B == 1 && C == 0) || (B == 0 && C == 1));
                count += ((C == 1 && A == 0 && B == 0) || (C == 0 && A == 1 && B== 1));
                goto finish;
            }
        }
    }
   
    finish : if (count == 3)
         {
             printf("A is saying %s.word\n", (A == 1) ? "true" : "false");
             printf("B is saying %s.word\n", (B == 1) ? "true" : "false");
             printf("C is saying %s.word\n", (C == 1) ? "true" : "false");
         }
    return 0;
}
搜索更多相关主题的帖子: 人工智能 
2011-01-13 10:01
快速回复:小小的人工智能问题 求解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021878 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved