安徽工业大学离散数学实验报告定稿版

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

安徽工业大学离散数学实验报告精编W O R D

IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】

《离散数学》实验报告专业

软件工程

班级

163班

姓名周掌珍

学号

授课教师杨思春

二 O 一七年六月

目录

实验一联结词的运算

实验二集合的运算

实验三二元关系的性质判定

实验四图的矩阵运算

实验一联结词的运算

一.实验目的

通过上机实验操作,将命题连接词运算融入到C语言的程序编写中,一方面加强对命题连接词运算的理解,另一方面通过编程实现命题连接词运算,帮助学生复习和锻炼C语言知识,将理论知识与实际操作结合,让学生更加容易理解和记忆命题连接词运算。

二.实验原理

(1) 非运算, 符号: ,当P=T时,P为F, 当P=F时,P为T 。

(2) 合取, 符号: ∧ , 当且仅当P和Q的真值同为真,命题P∧Q的真值才为真;否则,P∧Q的真值为假。

(3) 析取, 符号: ∨ , 当且仅当P和Q的真值同为假,命题P∨Q的真值才为假;否则,P∨Q的真值为真。

(4) 异或, 符号: ▽ , 当且仅当P和Q的真值不同时,命题P▽Q的真值才为真;否则,P▽Q的真值为真。

(5) 蕴涵, 符号: → , 当且仅当P为T,Q为F时,命题P→Q的真值才为假;否则,P→Q的真值为真。

(6) 等价, 符号: , 当且仅当P,Q的真值不同时,命题PQ的真值才为假;否则,P→Q的真值为真。

三.实验内容

编写一个程序实现非运算、合取运算、析取运算、异或运算、蕴涵运算、等价运算。

四.算法程序

内容格式:新罗马,小五号,行间距固定值18磅

#include

int main()

{

char m;

int P,Q;

printf("请输入P,Q的真值与逻辑连接词:(P逻辑联结Q)\na:与\tb:或\tc(请先输入0):非\td:蕴含\te:等价\tf:异或\n");

scanf("%d%c%d",&P,&m,&Q);

switch(m)

{

case 'a': if(P==1&&Q==1) printf("P与Q=1\n");

else printf("p合取Q=0\n");break;

case 'b': if(P==0&&Q==0) printf("P或Q=0\n");

else printf("P或Q=1\n");break;

case 'c': if(P==1) printf("非P=0\n");

else printf("非P=1\n");break;

case 'd': if(P==1&&Q==0) printf("P蕴含Q=0\n");

else printf("P蕴含Q=1\n");break;

case 'e': if(P==Q) printf("P等价Q=1\n");

else printf("P等价Q=0\n");break;

case 'f': if(P==Q) printf("P异或Q=0\n");

else printf("P异或Q=1\n");break;

}

五.实验结果

实验结果截图大小为:宽(10cm)×高(8cm)

六.心得体会

内容格式:宋体,五号,行间距固定值18磅

实验二集合的运算

一.实验目的

集合运算主要包括并运算,交运算,相对差,对称差运算,集合论的语言适合于描述和研究离散对象及其关系,所以也是计算机科学与工程的理论基础,在程序设计、关系数据库、排队论、开关理论,形式语言和自动机理论等学科领域中都有重要的应用。集合运算是学习集合论的基础,通过编程实现集合的相关运算,帮助同学们学好集合论相关知识打下基础。

二.实验原理

交运算:任何二个集合A和B的交集A∩B是由A和B所共有的全部元素构成的集合,

即:A∩B={x | x A∧ x B}

并运算:A、B是任意二个集合,A和B的并集A∪B是由A和B的所有元素构成的集合。

即:A∪B={x│ xA∨xB}

相对差:设A和B是二个任意集合,B对A的相对差(A-B)是由属于A且不属于B的所有元素组成的集合。即:A-B={x│xA∧xB}={x│xA∧xB}

对称差:设A、B是任意二集合,A和B的环和记作A⊕B。

即:A⊕B=(A-B)∪(B-A)=(A∩~B)∪(B∩~A)

或者x(A⊕B)x{x |xAxB}

三.实验内容

深入理解集合的四种基本运算,根据每个运算定义,编程实现各个运算。

四.算法程序

内容格式:新罗马,小五号,行间距固定值18磅

交集运算:

#include

int main()

{

int a[10],b[10],c[20],i,m,n,j,k=0;

printf("请输入集合A,集合B中的元素个数:\n");

scanf("%d%d",&m,&n);

printf("请输入集合A的元素:\n");

for(i=0;i

scanf("%d",&a[i]);

printf("请输入集合B的元素:\n");

for(i=0;i

scanf("%d",&b[i]);

printf("A={ ");

for(i=0;i

相关文档
最新文档