文档库 最新最全的文档下载
当前位置:文档库 › 安徽工业大学离散数学实验报告定稿版

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

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

安徽工业大学离散数学实验报告精编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

printf("%d,",a[i]);

putchar('\b');

printf("}\n");

printf("B={ ");

for(i=0;i

printf("%d,",b[i]);

putchar('\b');

printf("}\n");

for(i=0;i

for(j=0;j

if(a[i]==b[j]) c[k++]=a[i]; printf("A∩B={ ");

for(i=0;i

printf("%d,",c[i]);

putchar('\b');

printf("}\n");

}

并集运算:

#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

printf("%d,",a[i]);

putchar('\b');

printf("}\n");

printf("B={ ");

for(i=0;i

printf("%d,",b[i]);

putchar('\b');

printf("}\n");

for(i=0;i

c[k++]=a[i];

for(j=0;j

{

for(i=0;i

if(b[j]==c[i]) break;

if(i==m) c[k++]=b[j];

}

printf("A∪B={ ");

for(i=0;i

printf("%d,",c[i]);

putchar('\b');

printf("}\n");

}

相对差:

#include

int main()

{

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

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

printf("%d,",a[i]);

putchar('\b');

printf("}\n");

printf("B={ ");

for(i=0;i

printf("%d,",b[i]);

putchar('\b');

printf("}\n");

for(i=0;i

c[k++]=a[i];

for(j=0;j

{

for(i=0;i

if(b[j]==c[i])

{

for(t=i;t

{

c[t]=c[t+1];

}

k--;

}

}

printf("A-B={ ");

for(i=0;i

printf("%d,",c[i]);

putchar('\b');

printf("}\n");

}

对称差:

#include

int main()

{

int a[10],b[10],c[20],c1[20],c2[20],i,m,n,j,k1=0,k2=0,k=0,t;

printf("请输入集合

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

printf("A={ ");

for(i=0;i

printf("%d,",a[i]);

putchar('\b');

printf("}\n");

printf("B={ ");

for(i=0;i

printf("%d,",b[i]);

putchar('\b');

printf("}\n");

for(i=0;i

c1[k1++]=a[i];

for(j=0;j

{

for(i=0;i

if(b[j]==c1[i])

{

for(t=i;t

{

c1[t]=c1[t+1];

}

k1--;

}

}

for(j=0;j

c2[k2++]=b[j];

for(j=0;j

{

for(i=0;i

if(a[j]==c2[i])

{

for(t=i;t

{

c2[t]=c2[t+1];

}

k2--;

}

}

for(i=0;i

c[k++]=c1[i];

for(j=0;j

{

for(i=0;i

if(c2[j]==c[i]) break;

if(i==k1) c[k++]=c2[j];

}

printf("A⊕B={ ");

for(i=0;i

printf("%d,",c[i]);

putchar('\b');

printf("}\n");

}

五.实验结果

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

并集运算

相对差运算

对称差运算

六.心得体会

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

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

一.实验目的

二元关系是离散数学中的一个重要的基本概念,定义在某一集合上的二元关系有自反性、反自反性、对称性、反对称性和传递性,二元关系的性质是学习特殊二元关系的基础,通过编程判断二元关系的性质,帮助同学们更好地理解二元关系相关性质定义。

二.实验原理

自反性质:设R是X集合上的二元关系,对于每一个x∈X,若有xRx,则称R是自反关系。

反自反性质:设R是X上的二元关系,对于每一个xX,有xRx,则称R有反自反的关系。

对称性质:设R是X上的二元关系,对于每一个x,y∈X。若xRy时有yRx,则称R是对称关系。

反对称性质:设R是X集合上的二元关系,对于每一个∈R(x≠y),若 ∈R ,则称R是反对称关系。

传递性质:设R为定义在集合X上的二元关系,如果对于任意的x,y,z∈X,每当xRy,yRz时就有xRz,称关系R在X上是传递的。

三.实验内容

编程输入一个集合以及该集合上的一种二元关系,判断该二元关系具有哪些性质。

离散数学上机实验1

实验1 1实验内容 (1)求任意一个命题公式的真值表。 (2)利用真值表求任意一个命题公式的主范式。 (3)利用真值表进行逻辑推理。 注:(2)和(3)可在(1)的基础上完成。 2实验目的 真值表是命题逻辑中的一个十分重要的概念,利用它几乎可以解决命题逻辑中的所有问题。例如,利用命题公式的真值表,可以判断命题公式的类型、求命题公式的主范式、判断两命题公式是否等价,还可以进行推理等。 本实验通过编写一个程序,让计算机给出命题公式的真值表,并在此基础上进行命题公式类型的判定、求命题公式的主范式等。目的是让学生更加深刻地理解真值表的概念,并掌握真值表的求解方法及其在解决命题逻辑中其他问题中的应用。 3算法的主要思想 利用计算机求命题公式真值表的关键是:①给出命题变元的每一组赋值;②计算命题公式在每一组赋值下的真值。 真值表中命题变元的取值具有如下规律:每列中0 和1 是交替出现的,且0 和1 连续出现的个数相同。n 个命题变元的每组赋值的生成算法可基于这种思想。 含有n个命题变元的命题公式的真值的计算采用的方法为“算符优先法”。 为了程序实现的方便,约定命题变元只用一个字母表示,非、合取、析取、蕴含和等价联结词分别用!、&、|、-、+来表示。 算符之间的优先关系如表1-1所示: 表1-1算符优先级

优先算法,我们采用两个工作栈。一个称作OPTR,用以寄存运算符;另一个称作OPND,用以寄存操作数或运算结果。算法的基本思想是: (1)首先设置操作数栈为空栈,符号“@”为运算符的栈底元素; (2)调用函数Divi(exp,myopnd)得到命题公式包含的命题变元序列myopnd (按字典序排列,同一个命题变元只出现一次); (3)依次读入命题公式中的每个字符,若是命题变元则其对应的赋值进OPND 栈,若是运算符,则和OPTR栈的栈顶运算符比较后作相应操作,直至整个命题公式求值完毕。

离散数学实验报告

《离散数学》实验报告专业网络工程 班级 姓名 学号 授课教师 二 O 一六年十二月

目录 实验一联结词的运算 实验二根据矩阵的乘法求复合关系 实验三利用warshall算法求关系的传递闭包实验四图的可达矩阵实现

实验一联结词的运算 一.实验目的 通过上机实验操作,将命题连接词运算融入到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的真值不同时,命题P?Q的真值才为假;否 则,P→Q的真值为真。 三.实验内容 编写一个程序实现非运算、合取运算、析取运算、异或运算、蕴涵运算、等价运算。四.算法程序 #include void main() { printf("请输入P、Q的真值\n"); int a,b; scanf("%d%d",&a,&b); int c,d; if(a==1) c=0; else c=1; if(b==1) d=0; else d=1; printf("非P、Q的结果为%d,%d\n",c,d);

离散数学实验报告

离散数学实验报告(实验ABC) 专业班级 学生姓名 学生学号 指导老师 完成时间

目录 第一章实验概述..................................... 错误!未定义书签。 实验目的....................................... 错误!未定义书签。 实验内容....................................... 错误!未定义书签。 实验环境....................................... 错误!未定义书签。第二章实验原理和实现过程........................... 错误!未定义书签。 实验原理....................................... 错误!未定义书签。 建立图的邻接矩阵,判断图是否连通 ............ 错误!未定义书签。 计算任意两个结点间的距离 ................... 错误!未定义书签。 对不连通的图输出其各个连通支 ................ 错误!未定义书签。 实验过程(算法描述)........................... 错误!未定义书签。 程序整体思路 ............................... 错误!未定义书签。 具体算法流程 ................................ 错误!未定义书签。第三章实验数据及结果分析........................... 错误!未定义书签。 建立图的邻接矩阵并判断图是否连通的功能测试及结果分析错误!未定义书签。 输入无向图的边 .............................. 错误!未定义书签。 建立图的连接矩阵 ............................ 错误!未定义书签。 其他功能的功能测试和结果分析................... 错误!未定义书签。 计算节点间的距离 ............................ 错误!未定义书签。 判断图的连通性 .............................. 错误!未定义书签。 输出图的连通支 .............................. 错误!未定义书签。 退出系统 .................................... 错误!未定义书签。第四章实验收获和心得体会........................... 错误!未定义书签。

(完整版)离散数学实验指导书及其答案

实验一命题逻辑公式化简 【实验目的】加深对五个基本联结词(否定、合取、析取、条件、双条件)的理解、掌握利用基本等价公式化简公式的方法。 【实验内容】用化简命题逻辑公式的方法设计一个表决开关电路。 实验用例:用化简命题逻辑公式的方法设计一个 5 人表决开关电路,要求 3 人以上(含 3 人)同意则表决通过(表决开关亮)。 【实验原理和方法】 (1)写出5人表决开关电路真值表,从真值表得出5 人表决开关电路的主合取公式(或主析取公式),将公式化简成尽可能含五个基本联结词最少的等价公式。 (2)上面公式中的每一个联结词是一个开关元件,将它们定义成 C 语言中的函数。 (3)输入5人表决值(0或1),调用上面定义的函数,将5人表决开关电路真值表的等价公式写成一个函数表达式。 (4)输出函数表达式的结果,如果是1,则表明表决通过,否则表决不通过。 参考代码: #include int vote(int a,int b,int c,int d,int e) { // 五人中任取三人的不同的取法有10种。 i f( a&&b&&c || a&&b&&d || a&&b&&e || a&&c&&d || a&&c&&e || a&&d&&e || b&&c&&d || b&&c&&e || b&&d&&e || c&&d&&e) return 1; else return 0; } void main() { i nt a,b,c,d,e; printf(" 请输入第五个人的表决值(0 或1,空格分开):"); scanf ("%d%d%d%d%d",&a,&b,&c,&d,&e); i f(vote(a,b,c,d,e)) printf(" 很好,表决通过!\n"); else printf(" 遗憾,表决没有通过!\n"); } // 注:联结词不定义成函数,否则太繁 实验二命题逻辑推理 【实验目的】加深对命题逻辑推理方法的理解。【实验内容】用命题逻辑推理的方法解决逻辑

安徽工业大学软件工程实验报告

《软件工程》实验报告 姓名:江文杰 学号:139074333 班级:网133 指导老师:周兵

一.实验目的 1.能按照软件工程的思想,采用面向过程的方法开发出一个小型软件系统。 2.在软件系统开发过程中,能综合利用一门编程语言和软件工程等多门课程的知识。 3.培养良好的软件开发习惯,了解软件企业文化。 4.掌握结构化数据流分析技术。 5.掌握结构化程序设计的基本概念与技术,并且养成良好的编码风格。 6.掌握单元测试的一般步骤及技术。 7.掌握集成测试的一般步骤和技术。 二.实验内容 1.软件需求分析 ①、功能需求分析 ·输入一个年份(1-3000),然后显示12个月的月历 ·能解决闰年和平年问题 ·能输出显示结果 ②、运行需求分析 ·操作系统:Windows9x, Windows2000, Windows XP及更高版本 ③、数据流图

软件结构图: 2.软件设计与编码 #include #include #include #include #define firstdayof1 1 /* 定义第一年的第一天,星期日=7 */ #define gap " " /* set gap between numbers of dates */ #define dent " " /* set right margin. */ struct info { int month; int firstdayofmonth; int daysofmonth; int leap; }monthinfo;

离散数学实验报告--四个实验!!!

《离散数学》 课程设计 学院计算机学院 学生姓名 学号 指导教师 评阅意见 提交日期 2011 年 11 月 25 日

引言 《离散数学》是现代数学的一个重要分支,也是计算机科学与技术,电子信息技术,生物技术等的核心基础课程。它是研究离散量(如整数、有理数、有限字母表等)的数学结构、性质及关系的学问。它一方面充分地描述了计算机科学离散性的特点,为学生进一步学习算法与数据结构、程序设计语言、操作系统、编译原理、电路设计、软件工程与方法学、数据库与信息检索系统、人工智能、网络、计算机图形学等专业课打好数学基础;另一方面,通过学习离散数学课程,学生在获得离散问题建模、离散数学理论、计算机求解方法和技术知识的同时,还可以培养和提高抽象思维能力和严密的逻辑推理能力,为今后爱念族皮及用计算机处理大量的日常事务和科研项目、从事计算机科学和应用打下坚实基础。特别是对于那些从事计算机科学与理论研究的高层次计算机人员来说,离散数学更是必不可少的基础理论工具。 实验一、编程判断一个二元关系的性质(是否具有自反性、反自反性、对称性、反对称性和传递性) 一、前言引语:二元关系是离散数学中重要的内容。因为事物之间总是可以 根据需要确定相应的关系。从数学的角度来看,这类联系就是某个集合中元素之间存在的关系。 二、数学原理:自反、对称、传递关系 设A和B都是已知的集合,R是A到B的一个确定的二元关系,那么集合R 就是A×B的一个合于R={(x,y)∈A×B|xRy}的子集合 设R是集合A上的二元关系: 自反关系:对任意的x∈A,都满足∈R,则称R是自反的,或称R具有自反性,即R在A上是自反的?(?x)((x∈A)→(∈R))=1 对称关系:对任意的x,y∈A,如果∈R,那么∈R,则称关系R是对称的,或称R具有对称性,即R在A上是对称的? (?x)(?y)((x∈A)∧(y∈A)∧(∈R)→(∈R))=1 传递关系:对任意的x,y,z∈A,如果∈R且∈R,那么∈R,则称关系R是传递的,或称R具有传递性,即R在A上是传递的? (?x)(?y)(?z)[(x∈A)∧(y∈A)∧(z∈A)∧((∈R)∧(∈R)→(∈R))]=1 三、实验原理:通过二元关系与关系矩阵的联系,可以引入N维数组,以数 组的运算来实现二元关系的判断。 图示:

安徽工业大学误差实验报告

实验一 误差的基本性质与处理 一、实验目的 了解误差的基本性质以及处理方法 二、实验原理 (1)正态分布 设被测量的真值为0L ,一系列测量值为i L ,则测量列中的随机误差i δ为 i δ=i L -0L (2-1) 式中i=1,2,…..n. 正态分布的分布密度()()2 22f δσδ -= (2-2) 正态分布的分布函数()()22 2F e d δδσδδ --∞=(2-3) 式中σ-标准差(或均方根误差); 它的数学期望为 ()0E f d δδδ+∞ -∞==? (2-4) 它的方差为 ()22f d σδδδ+∞ -∞=? (2-5) (2)算术平均值 对某一量进行一系列等精度测量,由于存在随机误差,其测得值皆不相同,应以全部测得值的算术平均值作为最后的测量结果。 1、算术平均值的意义 在系列测量中,被测量所得的值的代数和除以n 而得的值成为算术平均值。 设 1l ,2l ,…,n l 为n 次测量所得的值,则算术平均值121...n i n i l l l l x n n =++==∑ 算术平均值与真值最为接近,由概率论大数定律可知,若测量次数无限增加,则算术平均值x 必然趋近于真值0L 。

i v = i l -x i l ——第i 个测量值,i =1,2,...,;n i v ——i l 的残余误差(简称残差) 2、算术平均值的计算校核 算术平均值及其残余误差的计算是否正确,可用求得的残余误差代数和性质来校核。 残余误差代数和为: 11n n i i i i v l nx ===-∑∑ 当x 为未经凑整的准确数时,则有 1n i i v ==∑0 1)残余误差代数和应符合: 当1 n i i l =∑=nx ,求得的x 为非凑整的准确数时,1n i i v =∑为零; 当1 n i i l =∑>nx ,求得的x 为凑整的非准确数时,1n i i v =∑为正;其大小为求x 时的余数。 当1n i i l =∑

离散数学实验报告()

《离散数学》实验报告 专业网络工程 班级 姓名 学号 授课教师 二 O 一六年十二月

目录 实验一联结词的运算 实验二根据矩阵的乘法求复合关系 实验三利用warshall算法求关系的传递闭包实验四图的可达矩阵实现

实验一联结词的运算 一.实验目的 通过上机实验操作,将命题连接词运算融入到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的真值不同时,命题P?Q的真值才为假;否则,P→Q的真值为真。 三.实验内容 编写一个程序实现非运算、合取运算、析取运算、异或运算、蕴涵运算、等价运算。四.算法程序 #include void main() { printf("请输入P、Q的真值\n"); int a,b; scanf("%d%d",&a,&b); int c,d; if(a==1) c=0; else c=1; if(b==1) d=0;

安徽工业大学——java实验报告

Java实验报告 学号149074353 姓名程裕博 班级物141 指导教师柯栋梁 安徽工业大学计算机学院2016年11月

实验一: 利用JAVA 反射技术分析类结构 自己定义的类: package chap05; public class analysis { private int a; private char c; protected int b; public double d; public void test1() { } private void test2() { } protected double test3() { return 1.0; } } 用java反射技术分析输出的结果: Enter class name (e.g. java.util.Date): chap05.analysis class chap05.analysis { public chap05.analysis(); public void test1(); private void test2(); protected double test3(); private int a; private char c; protected int b; public double d; } 1.分析程序运行时的输出结果。 输出的结果中显示了被分析类的方法与变量,包括这些方法与变量的

修饰符 2.分析与JAVA反射技术相关的几个类的作用: https://www.wendangku.net/doc/8a9687547.html,ng.reflect.Constructor; Constructor 提供关于类的单个构造方法的信息以及对它的访问权限。 https://www.wendangku.net/doc/8a9687547.html,ng.reflect.Field; Field 提供有关类或接口的单个字段的信息,以及对它的动态访问权限。反射的字段可能是一个类(静态)字段或实例字段。 https://www.wendangku.net/doc/8a9687547.html,ng.reflect.Method; Method 提供关于类或接口上单独某个方法(以及如何访问该方法)的信息。所反映的方法可能是类方法或实例方法(包括抽象方法)。https://www.wendangku.net/doc/8a9687547.html,ng.reflect.Modifier; Modifier 类提供了static 方法和常量,对类和成员访问修饰符进行解码。修饰符集被表示为整数,用不同的位位置(bit position) 表示不同的修饰符。 实验二:利用JAVA 反射技术分析对象结构 实验内容:运行示例程序,分析Integer 数组对象的结构;改写程序分析一下自定义 的类对象,如Employee 类。

离散数学上机实验报告

离散数学上机实验报告

————————————————————————————————作者:————————————————————————————————日期: ?

《离散数学》 实验报告 姓名: 学号: 班级: ? 实验一连结词逻辑运算 一.实验目的 实现二元合取、析取、蕴涵和等价表达式的计算。熟悉连接词逻辑运算规则,利用程序语言实现逻辑这几种逻辑运算。

二.实验内容 从键盘输入两个命题变元P和Q的真值,求它们的合取、析取、蕴涵和等价四种运算的真值。要求对输入内容进行分析,如果不符合0、1条件需要重新输入,程序有良好的输入输出界面。 三.实验环境 使用Microsoft Visual C++6.0为编程软件,采用称C/C++语言为编程语言实现。 四.实验过程 1.算法分析: 合取:p,q都为1的时候为1,其他为0 析取:p,q都为0的时候为0,其他为1 蕴含:p为1,q为0时为0,其他为1 等价:p,q同真同假 2.程序代码: #include intmain() { ?int P,Q,a,b,c,d,p,q; printf(" P的值"); for(P=0;P<2;P++) ?{ ?for(Q=0;Q<2;Q++) ??printf("\t%d",P); ?} printf("\n Q的值"); for(P=0;P<2;P++) ?{ ??for(Q=0;Q<2;Q++) ?printf("\t%d",Q); ?} printf("\n 非P的值"); for(P=0;P<2;P++) { ?for(Q=0;Q<2;Q++) ?{ ??if(P==0)/*判断非P的值*/ ???p=1; ??else ??p=0; ???printf("\t%d",p); ?} ?}

离散数学实验报告

大连民族学院 计算机科学与工程学院实验报告 实验题目:判断关系的性质 课程名称:离散数学 实验类型:□演示性□验证性□操作性□设计性□综合性 专业:班级:学生姓名:学号: 实验日期:年月日实验地点: 实验学时:实验成绩: 指导教师签字:年月日 实验报告正文部分(具体要求详见实验报告格式要求) 实验报告格式 [实验题目] 判断关系的性质 [实验目的] 使学生掌握利用计算机语言实现判断关系性质的基本方法。[实验环境] Microsoft Visual C++6.0 [实验原理] 实验内容与要求:对给定表示有穷集上关系的矩阵,确定这个关系是否是自反的或反自反的;对称的或反对称的;是否传递的。 通过二元关系与关系矩阵的联系,可以引入N维数组,以数组的运算来实现二元关系的判断。

图示: 程序源代码: #include #define N 4 main() { int i,j,k; int f,e,z; int M[N][N]; printf("判断R是否为自反关系、对称关系、是否可传递?\n"); printf("请输入一个4*4的矩阵。\n"); for(i=0;i

scanf("%d",&M[i][j]); for(i=0;i

安徽工业大学sap实验报告

《ERP 实习》 实验报告 学号 姓名 班级 指导老师 2014年 1月7日 一、所做实验项目分类 实验项目1 系统基本信息设置 一、实验目的与要求 ERP 作为计划与控制信息系统,需要进行大量的信息处理。任何一个制造企业

都有大量的生产与经营动作数据。数据必须经过加工、处理才能产生有用的信息供决策者使用。学生通过已经配置好环境的ERP 软件操作,了解企业基础数据的作用,了解ERP 的管理流程。 1. 熟悉SAP 实验环境;学习SAP 客户端软件的安装和登录配置;熟悉系统操作 环境和方法; 2. 学习维护液压锤GT10 产品各种基础数据,如:仓库、物料编码、BOM、工作 中心、工艺路线等数据维护。 二、实验环境: 1. Microsoft Windows XP Professional。 2. SAP 软件实验教学系统。 三、实验内容: 1. SAP 系统环境 2. 库存地点信息维护; 3. 物料编码和主文件维护; 4. 物料清单维护; 5. 工作中心数据维护; 6. 工艺路线维护。 四、实验步骤及实验截图: 1、登录sap系统 2、仓储地点维护 3、物料档案设置 通过事务码MM01/MM02/MM03进行物料编码和主文件维护设置操作; (1)物料油漆的创建 (2)物料钎杆的创建

(3)物料缸体的 (4)物料活塞杆的创建 (5)物料板材的创建 (6)半成品视图维图 (7)物料清单

(8)物料清单设置: 通过事务码CS01/CS02/CS03进行BOM主数据的维护; (9)物料清单展开 通过事务码CS11/CS12/CS15进行BOM主数据的逐层显示BOM、多层显示BOM、反查BOM。

离散数学上机实验报告

离 散 数 学 实 验 报 告 姓名: 学号: 班级:

离散数学实验报告 实验一真值计算 实验内容: 从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。用C语言实现。 实验源程序和运行结果如下: #include "" void main() { char p,q,t; int p1,q1; cout<<"输入p,q的真值(F或T)"<>p>>q; if(p=='F') p1=0; else p1=1; if(q=='F') q1=0; else q1=1;

.\n选择2计算对称闭包...\n选择3用R+计算传递闭包...\n选择4用washall 计算传递闭包...\n计算结束后选择0退出\n"); scanf("%d",&t); switch(t) { case 1: { for(i=0;i

for(i=0;i

离散数学实验报告

离散数学实验报告 姓名: 学号: 班级: 实验地点: 实验时间:

1 实验目的和要求 运用最小生成树思想和求最小生成树程序解决实际问题。实际问题描述如下: 八口海上油井相互间距离如下表,其中1号井离海岸最近,为5km 。问从海岸经1号井铺设油管把各井连接起来,怎样连油管长度最短(为便于检修,油管只准在油井处分叉)? 2 实验环境和工具 实验环境:Windows 7 旗舰版 工具:Dev-C++ 5.8.3 3 实验过程 3.1 算法流程图

3.2程序核心代码 //油管铺设问题Prim算法实现 #include #include using namespace std; #define MAXV 10 #define INF 32767 //INF表示∞ typedef int InfoType; typedef struct{ int no; //顶点编号 InfoType info; //顶点其他信息 } VertexType; //顶点类型 typedef struct{ //图的定义 float edges[MAXV][MAXV]; //邻接矩阵 int vexnum; //顶点数 VertexType vexs[MAXV]; //存放顶点信息 } MGraph; //图的邻接矩阵类型

/*输出邻接矩阵g*/ void DispMat(MGraph g){ int i,j; for (i=0;i

安徽工业大学sap实验报告.pdf

《ERP 实习》实验报告 学号 姓名 班级 指导老师 2014年 1月 7日

一、所做实验项目分类 实验项目1 系统基本信息设置 一、实验目的与要求 ERP 作为计划与控制信息系统,需要进行大量的信息处理。任何一个制造企业 都有大量的生产与经营动作数据。数据必须经过加工、处理才能产生有用的信息供决策者使用。学生通过已经配置好环境的ERP 软件操作,了解企业基础数据的作用,了解ERP 的管理流程。 1. 熟悉SAP 实验环境;学习SAP 客户端软件的安装和登录配置;熟悉系统操作 环境和方法; 2. 学习维护液压锤GT10 产品各种基础数据,如:仓库、物料编码、BOM、工作 中心、工艺路线等数据维护。 二、实验环境: 1. Microsoft Windows XP Professional。 2. SAP 软件实验教学系统。 三、实验内容: 1. SAP 系统环境 2. 库存地点信息维护; 3. 物料编码和主文件维护; 4. 物料清单维护; 5. 工作中心数据维护; 6. 工艺路线维护。 四、实验步骤及实验截图: 1、登录sap系统 2、仓储地点维护 3、物料档案设置 通过事务码MM01/MM02/MM03进行物料编码和主文件维护设置操作; (1)物料油漆的创建 (2)物料钎杆的创建

(3)物料缸体的 (4)物料活塞杆的创建 (5)物料板材的创建 (6)半成品视图维图

(7)物料清单 (8)物料清单设置: 通过事务码CS01/CS02/CS03进行BOM主数据的维护;

(9)物料清单展开 通过事务码CS11/CS12/CS15进行BOM主数据的逐层显示BOM、多层显示BOM、反查BOM。 (10)供应商信息维护 通过事务码XK01/XK02/XK03进行供应商信息维护设置操作;

(完整word版)安徽工业大学微机接口实验报告

《微机原理与接口技术》 实验报告书 专业班级网104班 学号109074 姓名 指导教师高云全 安徽工业大学计算机学院

实验一 8255A应用—数码管动态显示 一、实验目的 1、掌握8255A的工作方式、编程原理和微机接口方法。 2、了解LED数码管动态显示的工作原理及编程方法。 二、实验内容 编制程序,使数码管显示“DICE88”字样。 三、实验程序框图 图6-1 实验程序流程图 四、实验步骤 联机模式: (1)在PC机和实验系统联机状态下,运行实验系统dj8086k.exe(双击桌面OTA图标或通过开始-程序-dj8086k-DJ8086k微机原理与接口技术),新建文件并在编辑窗口输入汇编源程序,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“连续运行”或工具图标运行,即开始运行程序。 (2)数码管显示“DICE88”字样。 脱机模式: (1)在P.态下,通过单板机小键盘,从2DF0地址开始输入机器码(参见附录三),完成后返回监控,输入起始地址2DF0,再按EX键执行。 (2)数码管显示“DICE88”字样。 五、实验程序清单 CODE SEGMENT ; display "DICE88" ASSUME CS:CODE ORG 2DF0H START: JMP START0 PA EQU 0FF20H ;字位口 PB EQU 0FF21H ;字形口 PC EQU 0FF22H ;键入口 BUF DB ?,?,?,?,?,? data1: db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

离散数学实验报告格式

《离散数学》实验报告 专业 班级 姓名 学号 授课教师 二 O 一六年十二月

目录 实验一联结词的运算 实验二根据矩阵的乘法求复合关系实验三利用算法求关系的传递闭包实验四图的可达矩阵实现

实验一联结词的运算 一.实验目的 通过上机实验操作,将命题连接词运算融入到C语言的程序编写中,一方面加强对命题连接词运算的理解,另一方面通过编程实现命题连接词运算,帮助学生复习和锻炼C语言知识,将理论知识与实际操作结合,让学生更加容易理解和记忆命题连接词运算。二.实验原理 (1) 非运算, 符号: ,当时,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为为F时,命题P→Q的真值才为假;否则,P→Q 的真值为真。 (6) 等价, 符号: ?, 当且仅当的真值不同时,命题P?Q的真值才为假;否则,P→Q 的真值为真。 三.实验内容 编写一个程序实现非运算、合取运算、析取运算、异或运算、蕴涵运算、等价运算。四.算法程序 <> () { ; ("请选择运算方式\n"); ("1.析取\n"); ("2.合取\n"); ("3.非\n"); ("4.蕴含\n"); ("5.等价\n");

m; (""); ( m>=1 m<=4 ) { ("请输入P Q的值\n"); (" " ); = 1; (m) { 1( ( >= 1)( < 4 ) ) { (0 0) ("P 析取Q = 0\n"); ("P 析取Q = 1\n"); ; (4) ; ("请输入P Q的值\n"); (" " ); } ; 2( ( >= 0)( < 4 ) ) { (1 1) ("P 合取Q = 1\n"); ("P 合取Q = 0\n"); ; (4) ; ("请输入P Q的值\n"); (" " ); } ; 3( ( >= 0)( < 4 ) ) { (0) ("非Q = 1\n"); ("非Q = 0\n");

安徽工业大学计算机网络实验报告

计算机网络实验报告 专业计算机科学与技术 班级计122班 学号129074068 姓名叶玉虎 指导教师肖维民 安徽工业大学计算机学院 2013年12月29号

目录 实验总体说明 (3) 实验一以太网帧的构成 (3) 实验三路由信息协议RIP (8) 实验四传输控制协议TCP (10) 实验五邮件协议SMTP、POP3、IMAP (12) 实验六超文本传输协议HTTP (14)

实验总体说明 1.实验总体目标 配合计算机网络课程的教学,加强学生对计算机网络知识(TCP/IP协议)的深刻理解,培养学生的实际操作能力。 2.实验环境 计算机网络协议仿真实验室: 实验环境:网络协议仿真教学系统(通用版)一套 硬件设备:服务器,中心控制设备,组控设备,PC机若干台 操作系统:Windows 2003服务器版 3.实验总体要求 ●按照各项实验内容做实验,记录各种数据包信息,包括操作、观察、记录、分析, 通过操作和观察获得直观印象,从获得的数据中分析网络协议的工作原理; ●每项实验均提交实验报告,实验报告的内容可参照实验的具体要求,但总体上应包 括以下内容:实验准备情况,实验记录,实验结果分析,算法描述,程序段,实验过程中遇到的问题以及对思考问题的解答等,实验目的、实验原理、实验步骤不需要写入实验报告中。 实验一以太网帧的构成 实验时间:_____________ 成绩:________________ 实验角色:_____________ 同组者姓名:______________________________

练习一:领略真实的MAC帧 q....U 00000010: 85 48 D2 78 62 13 47 24 58 25 00 00 00 00 00 00 .H襵b.G$X%...... 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000030: 00 00 00 00 00 00 00 00 00 00 00 00 ............ 练习二:理解MAC地址的作用 ●记录实验结果 表1-3实验结果 本机MAC地址源MAC地址目的MAC地址是否收到,为什么 主机B 8C89A5-7570BB 8C89A5-757113 8C89A5-7570C1 是,主机A与主机B接在同一共享模块 主机D 8C89A5-771A47 8C89A5-757113 8C89A5-7570C1 是,主机C与主机D接在同一共享模块 主机E 8C89A5-757110 无无否,与主机A、C都不在同一共享模块 主机 F 8C89A5-7715F8 无无否,与主机A、C都不在同一共享模块 练习三:编辑并发送MAC广播帧 ●结合练习三的实验结果,简述FFFFFF-FFFFFF作为目的MAC地址的作用。 答:该地址为广播地址,作用是完成一对多的通信方式,即一个数据帧可发送给同一网段内的所有节点。 练习四:编辑并发送LLC帧 ●实验结果 帧类型发送序号N(S)接受序号N(R) LLC 001F 0 ●简述“类型和长度”字段的两种含义 答:一是如果字段的值小于1518,它就是长度字段,用于定义下面数据字段的长度;二是如果字段的值大于1536,用于定义一个封装在帧中的PDU分组的类型。 思考问题: 1.为什么IEEE802标准将数据链路层分割为MAC子层和LLC子层? 答:出于厂商们在商业上的激烈竞争,IEEE的802委员会未能形成一个统一的、最佳的局域网标准,而是被迫制定了几个不同标准,如802.4令牌总线网、802.5令牌环网等。为了使数据链路层能更好地适应多种局域网标准,802委员会就将局域网的数据链路层拆成两个子层,即逻辑链路控制

离散数学关系性质的C++或C语言判断实验报告

1.【实验目的】 对称: 通过算法设计并编程实现对给定集合上的关系是否为对称关系的判断,加深学生对关系性质的理解,掌握用矩阵来判断关系性质的方法 自反: 通过算法设计并编程实现对给定集合上的关系是否为自反关系的判断,加深学生对关系性质的理解,掌握用矩阵来判断关系性质的方法。 2.【实验内容】 已知关系R 由关系矩阵M 给出,要求判断由M 表示的这个关系是否为对称关 系。假定R 的关系矩阵为:?????? ? ??=1234210330124321M 3.【实验要求】 C 语言编程实现 4.【算法描述】 对称: 从给定的关系矩阵来判断关系R 是否为对称是很容易的。若M (R 的关系矩阵)为对称矩阵,则R 是对称关系;若M 为反对称矩阵,则R 是反对称关系。因为R 为对称的是等价关系的必要条件,所以,本算法可以作为判等价关系算法的子程序给出。 算法实现: (1) 输入关系矩阵M (M 为n 阶方阵); (2) 判断对称性,对于i=2,3,….,n ;j=1,2,……,i-1,若存在m ij =m ji , 则R 是对称的; (3) 判断反对称性; (4) 判断既是对称的又是反对称的; (5) 判断既不是对称的又不是反对称的; (6) 输出判断结果。

自反: 从给定的关系矩阵来断判关系R是否为自反是很容易的。若M(R的关系矩阵)的主对角线元素均为1,则R是自反关系;若M(R的关系矩阵)的主对角线元素均为0,则R是反自反关系;若M(R的关系矩阵)的主对角线元素既有1又有0,则R既不是自反关系也不是反自反关系。本算法可以作为判等价关系算法的子程序给出。 算法实现 (1)输入关系矩阵M(M为n阶方阵)。 (2)判断自反性,对于i=1,2,….,n;若存在m =0,则R不是自反 ii =1,则R是自反的;否则R既不是自反关系也不是的;若存在m ii 反自反关系。 (3)输出判断结果。 源代码 #include void z(); void r(); void main() { int d; while(d) { printf("欢迎使用关系性质的判断系统\n\n 1. 对称关系的判断 2. 自反关系的判断\n\n请输入选项:"); scanf("%d",&d); switch(d){ case 1: r();break; case 2: z();break; case 0: break; }

离散数学上机实验报告

离散数学实验报告姓名: 学号: 专业:

实验一、真值运算 一、实验内容 从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值,并输出。 二、实验步骤 编写程序,将P,Q以不同真值带入,观察程序运行结果,调式程序。 三、实验代码 #include int main() { int p,q; char t; while(t) { printf("是否运算程序(y/n):\n"); scanf("%c",&t); if('y'==t) { printf("输入p,q的真值(0或1):"); scanf("%d%d",&p,&q); if((p!=1)&&(p!=0)) { printf("请重新输入p值");

scanf("%d",&q); } if((q!=1)&&(q!=0)) { printf("请重新输入q值"); scanf("%d",&q); } if(q==0&&p==0) { printf("﹁p=1\n"); printf("﹁q=1\n"); printf("p∧q=0\n"); printf("p∨q=0\n"); printf("p→q=1\n"); printf("p<->q=1\n"); } else if(p==0&&q==1) { printf("﹁p=1\n"); printf("﹁q=0\n"); printf("p∧q=0\n"); printf("p∨q=1\n"); printf("p→q=1\n");

printf("p<->q=0\n"); } else if(p==1&&q==0) { printf("﹁p=0\n"); printf("﹁q=1\n"); printf("p∧q=0\n"); printf("p∨q=1\n"); printf("p→q=0\n"); printf("p<->q=0\n"); } else if(p==1&&q==1) { printf("﹁p=0\n"); printf("﹁q=0\n"); printf("p∧q=1\n"); printf("p∨q=1\n"); printf("p→q=1\n"); printf("p<->q=1\n"); } continue; } if('n'==t)

相关文档
相关文档 最新文档