怎麼樣求解一道關於邏輯推理的題目,用c語言實現。比如破案,比

時間 2021-05-04 19:04:28

1樓:匿名使用者

例子:誰是竊賊

公安人員審問四名竊賊嫌疑犯。已知,這四人當中僅有一名是竊賊,還知道這四人中每人要麼是誠實的,要麼總是說謊的。在回答公安人員的問題中:

甲說:「乙沒有偷,是丁偷的。」

乙說:「我沒有偷,是丙便的。」

丙說:「甲沒有偷,是乙偷的。」

丁說:「我沒有偷。」

請根據這四人的答話判斷誰是盜竊者。

*問題分析與演算法設計

假設a、b、c、d分別代表四個人,變數的值為1代表該人是竊賤。

由題目已知:四人中僅有一名是竊賤,且這四個人中的每個人要麼說真話,要麼說假話,而由於甲、乙、丙三人都說了兩句話:「x沒偷,x偷了」,故不論該人是否說謊,他提到的兩人中必有一人是小偷。

故在列條件表示式時,可以不關心誰說謊,誰說實話。這樣,可以列出下列條件表示式:

甲說:」乙沒有偷,是丁偷的。」 b+d=1

乙說:「我沒有偷,是丙偷有。」 b+c=1

丙說:「甲沒有偷,是乙偷的。」 a+b=1

丁說:「我沒有偷。」 a+b+c+d=1

其中丁只說了一句話,無法判定其真假,表示式反映了四人中僅有一名是竊賤的條件。

*程式與程式註釋

#include

void main()}}

*執行結果

the thief is b. (乙為竊賤。)

//關鍵思路就是用迴圈列舉,依次假設某個人是竊賊,然後代入到他們的敘述中,用if判斷看是否滿足,如果滿足,假設的那個人就是;不滿足,接著假設。

2樓:匿名使用者

比較費勁,我覺得關鍵是一定要搞清楚 要用什麼條件表示式表示真假的組合。然後套在一堆兒迴圈裡遍歷所有的情況,找個所有條件都滿足的就是了。

一道推理題,求答案

3樓:匿名使用者

裡面有關於這個案件的討論

4樓:紳士坎坷

1.他有凶器:磚頭...

2.他是果農兼花匠,所以,不可能不知到紫羅蘭對葡萄有好處,他這樣說,只能是撒謊...

5樓:匿名使用者

第一個,紫羅蘭喜陽光不會生長在葡萄藤下

誰能幫我解決一道c語言題目~~

6樓:匿名使用者

#include

#include

#include

#include

#define eps 1e-6 /*用於控制商的精確度*/main()

else printf("回答錯誤\n");

}break;

case 2:

for(i=1;i<=10;i++)

while(c<0);

printf("%d. %d-%d=\n",i,a,b);

scanf("%d",&da);

if(c==da)

else printf("回答錯誤\n");}break;

case 3:

for(i=1;i<=10;i++)

else printf("回答錯誤\n");

}break;

case 4:

printf("結果精確到小數點後6位\n");

for(i=1;i<=10;i++)

else printf("回答錯誤\n");

}break;

case 5:

printf("good bye!\n");

exit(0);

break;

default:

printf("無效指令\n");

exit(0);

break;

}fflush(stdin);

printf("答對%d題\n",n);

printf("再來一次?(y/n)\n");

scanf("%c",&zl);

system("cls"); }}

7樓:匿名使用者

#include

#include

main()

}只是一個除法 一個想法 你考慮一下 有可能的話我會把程式發上去

8樓:匿名使用者

case 4:

for(i=1;i<=10;i++)

else printf("回答錯誤\n");}break;

9樓:匿名使用者

what's mean?

一道c語言邏輯題目,求大神幫一下!

10樓:聽不清啊

#include

int main()

11樓:七琪淇

逐一驗證即可,偽**

實驗**:

#include

int main()

//假設b說的是真的,驗證:

res = 1;

if (res != 2 && res == 4)//假設c說的是真的,驗證:

res = 1;

if (res != 4 && res == 4)//假設d說的是真的,驗證:

res = 1;

if (res != 4 && res != 2)}實驗結果

c語言一道題目,誰能幫我解得……

12樓:匿名使用者

#include

void main()

一道數學題是怎麼編出來的,求解一道數學題。

寂寞如煙 如何進行數學試題的改編和原創 試題改編的一般方法 試題改編是對原有試題進行改造,使之從形式上 考查功能上發生改變而成為新題。改編試題的具體方法有 設定新的問題情境 不同題型之間的轉換 重新整合 轉變考查目標等。1 設定新的問題情境 一道常規的純粹數學問題,當把它放置在一個新的問題情境中時,...

成都太一道和企業管理有限公司怎麼樣

專業度不錯,幫我們做的專利申請,剛開始找了好多家對比,留下他們和其他一家,經過這麼半年多的比對,還是覺得他們不錯的,專業,而且後續的事情都通報很及時,有什麼問題溝通起來暢快,沒得溝通障礙,接下來今年的高企還要找他們做,做高企的老師評分比較仔細,我們公司存在的問題都會給我們直接指出來,不像另外幾家,感...

小學奧數題求解,一道小學奧數題怎麼做?求解求思路 急急急

把往返的路程看作 1 a的速度 1 15 b的速度 1 25 b先走了10秒,多走的路程 1 25 10 2 5二者的速度差 1 15 1 25 2 75a追上b的時間是2 5 2 75 15秒也就是b領先10 15 25秒,a領先395秒。不知道樓主的問題是不是這個意思 a領先 第1 24s,30...