刑侦大队对涉及六个嫌疑人的一桩疑案的分析,编一程序,将作案人找出来

通过编写C++程序解决一起涉及六名嫌疑人的疑案,利用逻辑条件筛选可能的作案人组合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

某地刑侦大队对涉及六个嫌疑人的一桩疑案进行分析:
A、B 至少有一人作案;
A、E、F 三人中至少有两人参与作案;
A、D 不可能是同案犯;
B、C 或同时作案,或与本案无关;
C、D 中有且仅有一人作案;
如果 D 没有参与作案,则 E 也不可能参与作案。

试编一程序,将作案人找出来。



代码如下:



#include<iostream>
using namespace std;
int main()
{
	int A, B, C, D, E, F ;//定义A到E六个变量,作案等于1,否则等于0
	for(A = 0 ; A <= 1 ; A +=1)
	  for(B = 0 ; B <= 1 ; B +=1)
	    for(C = 0 ; C <= 1 ; C+=1)
	      for(D = 0 ; D <= 1 ; D+=1)
	        for(E = 0 ; E <= 1 ; E+=1)
	          for(F = 0 ; F <= 1 ; F+=1)
			{
				if(6 ==
				( A || B )				//A、B 至少有一人作案
				+( !(A && D) )				//A、D 不可能是同案犯
				+( (A && E) || (A && F) || (E && F) )	//A、E、F 三人中至少有两人参与作案
				+( (B && C) || (!B && !C) )		//B、C 或同时作案,或与本案无关
				+( (C && !D) || (D && !C) )		//C、D 中有且仅有一人作案
				+( D||(!E)) )//如果 D 没有参与作案,则 E 也不可能参与作案。
				{
					cout<<"A "<<"B "<<"C "<<"D "<<"E "<<"F "<<endl;
					cout<<A<<" "<<B<<" "<<C<<" "<<D<<" "<<E<<" "<<F<<" "<<endl;
				}
			}
	 return 0 ;
}





结果:




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值