题目描述:
某地刑侦大队对涉及6个嫌疑人的一桩疑案进行分析:
(1):A,B至少有一人作案(2):A,E,F三人中至少有两人作案
(3);A,D不可能是同案犯
(4):B,C或同时作案,或与本案无关
(5):C,D中有且仅有一人作案
(6):如果D没有参与作案,则E也不可能参与作案
编一个程序把作案的人找出来
代码:
#include<iostream>
using namespace std;
void main()
{
int cc1,cc2,cc3,cc4,cc5,cc6;
for(int A=0;A<=1;A++)
for(int B=0;B<=1;B++)
for(int C=0;C<=1;C++)
for(int D=0;D<=1;D++)
for(int E=0;E<=1;E++)
for(int F=0;F<=1;F++)
{
cc1=A||B;
cc2= !(A&&D);
cc3=(A&&E)||(A&&F)||(E&&F);
cc4=(B&&E)||(!B&&!C);
cc5=(C&&!D)||(D&&!C);
cc6=D||(!D&&!E);
if(cc1+cc2+cc3+cc4+cc5+cc6==6)
{
cout<<"A:"<<A==0?"不是":"是"<<"罪犯"<<endl;
cout<<"B:"<<B==0?"不是":"是"<<"罪犯"<<endl;
cout<<"C:"<<C==0?"不是":"是"<<"罪犯"<<endl;
cout<<"D:"<<D==0?"不是":"是"<<"罪犯"<<endl;
cout<<"E:"<<E==0?"不是":"是"<<"罪犯"<<endl;
cout<<"F:"<<F==0?"不是":"是"<<"罪犯"<<endl;
}
}
return 0;
}