实验一 真值计算
触发器真值表

任务1触发器电路一、实验目的1、掌握D触发器、JK触发器等基本触发电路的原理与设计2、掌握时序电路的分析与设计的方法3、学习VHDL语言中构造体的不同描述方式的异同二、实验内容1、编写VHDL语言源程序,实现D触发器、JK触发器等基本触发电路2、扩展任务:设计其他如RS触发器,并分析它们相互转化的方法3、通过模拟和仿真,分析和验证各种出发器的逻辑功能及其触发方式三、实验要求1、列写D触发器、JK触发器的真值表2、编写实现D触发器、JK触发器功能的VHDL语言程序3、利用实验装置验证程序正确性,分析触发的方式4、写出完整的实验报告(包括上述图表和程序等)四、实验原理说明1、正边沿触发的D触发器的电路符号如图2-4所示。
从输入输出引脚而言,它有一个数据输入端d,一个时钟输入端clk和一个数据输出端q。
D触发器的真值表如表2-2所示。
从表中可以看出:D触发器的输出端只有在正边沿脉冲过后,输入端d的数据才可以被传递到输出端q。
表1D触发器真值表数据输入端时钟输入端clk 数据输出端qdX 0 不变X 1 不变0 - 01 - 12、带复位和置位功能的JK触发器电路符号如图2-5所示。
JK触发器的输入端有置位输s 复位输入clr,控制输入j和k,时钟输入clk;输出端有数据输出q和反向输出qb。
JK触发器的真值表如表2-3所示。
表2-3JK触发器真值表输入端输出端st clr clk j k Q qb0 1 X X X 1 01 0 X X X 0 10 0 X X X X X1 1 - 0 1 0 11 1 - 1 1 翻转翻转1 1 - 0 0 保持保持1 1 - 1 0 1 01 1 0 X X 保持保持编辑本段真值表定义表征逻辑事件输入和输出之间全部可能状态的表格。
真值表列出命题公式真假值的表。
通常以1表示真,0 表示假。
命题公式的取值由组成命题公式的命题变元的取值和命题联结词决定,命题联结词的真值表给出了真假值的算法。
实验一利用真值表法求取主析取范式以及主合取范式的实现

联接词运算符定义
cal(b, s): switch b[s] case…(!...&…|…>…-…)
基本思路参考
!: b[s+1]=!b[s] &: b[s+1]=b[s-1]&b[s+1] … 若下标s+2 超出表达式长,则返回b[s+1],
规范列出所输合式公式的真值表 给出相应主析取和主合取范式
基本思路参考
可用字符数组a记录输入的合式公式(!表示;& 表示;|表示;>表示;-表示)
多重循环显示真值表(1表示T,0表示F,先1后0) 并对公式进行相应赋值得数组b
assign(a, i, j, k): switch a[s] case…(!&|>-: b[s]=a[s]; ‘P’-i; ‘Q’-j; ‘R’-k)
实验目的:通过编程实现主析取范式以及主合 取范式的真值表求法以巩固相关理论的掌握
实验类型:验证 实验学时:4 实验环境:Windows+VC
实验内容
编程实现用真值表法求取含三个以内变量的 合式公式的主析取范式和主合取范式
要求:
从屏幕输入含三个以内变量的合式公式(其中 联结词按照从高到底的顺序出现)
否则返回cal(b, s+2)
?从屏幕输入含三个以内变量的合式公式其中联结词按照从高到底的顺序出现?规范列出所输合式公式的真值表?给出相应主析取和主合取范式基本思路参考?可用字符数组a记录输入的合式公式
实验一
利用真值表法求取主析取范式 以及主合取范式的实现
9月23日周一晚10-12 教2-216
实验一晶闸管直流调速系统主要单元调试

uT
uu
uv
uw
uu
1# 2# 3# 4# 5# 6#
如何调准90°?
二、单闭环系统的调试步骤
1、各单元的调试
(2)转速调节器ASR的调试
R0 RP1
R0
R1 C1
+ +
ASR
Rbal
+15V
RP1
Uct
RP2
-15V
限幅值和参数
二、单闭环系统的调试步骤
1、各单元的调试 (3)主电路的调试
直流电流表 B1 A
(3)按测得数据,画出两个电平检测器的 回环。
4.反号器(AR)的调试
测定输入输出比例,输入端加+5V电压, 调节RP,使输出端为-5V
5.逻辑控制器(DLC)的调试
测试逻辑功能,列出真值表,真值表应符合下表:
UM 输入
UI
1 1 0 0 01 1 0 0 1 00
Uz(Ublf) 0 0 0 1 1 1 输出
2 测取静特性时,须注意主电路电流不许超过电机的 额定值(1.1A).
3 双踪示波器的两个探头地线通过示波器外壳短接, 故在使用时,必须使两探头的地线同电位(只用一根 地线即可),以免造成短路事故。
四、思考题
1.闭环系统的调试原则是什么? 2.如何整定系统的零位? 3.如何整定反馈系数α? 4 . 如果发现闭环后,转速很高且不可控,
3、系统的闭环调试
(2)系统闭环运行;(3)闭环静特性测试 +
R1
C1
~
G
-
-15V
RP1
U
* g
R0
R0
++ +
ASR
真值表的C++算法实现

08届课程(设计)论文题目命题公式的真值表算法专业班级信息与计算科学(1)班学号**********学生姓名上官业云指导教师李圆媛指导教师职称讲师学院名称理学院完成日期:2010 年09月27日武汉工程大学本科课程设计(论文)目录目录 (I)摘要 ......................................................... I I 前言 ........................................................ I II 第1章课题背景 (1)1.1背景 (1)1.2 性质 (1)1.3 意义 (1)1.4 实验数据与结果 (1)1.5 文献综述 (2)第2章问题的分析与算法的实现 (3)2.1 问题的分析 (3)2.2算法的实现 (3)第3章总结 (13)致谢 (14)参考文献 (15)附录 (16)武汉工程大学本科课程设计(论文)摘要为了解决命题公式的真值表算法问题,本文采用面向对象编程,输入命题变元,并以字符串形式读入命题公式,应用运算符重载来进行相关运算,并在C++(使用的编译工具为VS2010)下,给出了问题的具体解决方案。
关键词:命题公式;真值表;类;运算符重载;递归;字符串武汉工程大学本科课程设计(论文)前言本文解决了计算任意含)n 个命题变元的命题公式的真值表的C++算(Nn法。
全文共3章。
第1章介绍了问题背景、问题以及性质问题的意义。
在本章中,还给出了具体的实验数据和我们查阅并借用的一些参考文献的主要内容。
第2章主要介绍了在对问题的分析后设计的算法,并编写程序,求出其具体调度方案。
第3章是本次课程设计的总结。
全文的最后是致谢、参考文献和程序的源代码。
上官业云武汉工程大学理学院武汉工程大学本科课程设计(论文)第1章 课题背景1.1背景设F 为含有命题变元n P P P ,,,21⋅⋅⋅的命题公式,给n P P P ,,,21⋅⋅⋅一组确定的取值,称为公式F 关于n P P P ,,,21⋅⋅⋅的一组真值指派。
实验一 基本电工仪表使用及测量误差分析

实验一 基本电工仪表使用及测量误差分析一、实验目的1. 掌握电压表、电流表等使用方法。
2. 会测定电压表、电流表准确度。
3. 学会减少电表对测量结果的影响及测量误差的计祘。
二、实验原理用电工测量仪表测量一个电量时,仪表的指示值Ax 与被测量的实际值Ao 之间,不可避免地存在一定的误差,它可用两种形式表示:绝对误差:△=Ax -Ao相对误差:ν=oA ∆×100% 用仪表测量会影响测量误差的因素很多(可参阅“附录一”或相关书籍),下面仅讨论其中的两个主要因素及处理方法。
1. 仪表准确度对测量误差的影响:仪表准确度关系到测量误差的大小。
目前,我国直读式电工测量仪表准确度分为0.1,0.2,0.5,1.0,1.5,2.5和5.0七个等级。
这些数字表示仪表在正常工作条件下进行测量时产生的最大相对误差的百分数。
仪表准确度等级通常标在仪表面板上。
仪表使用过程中应定期进行校验,最简单的校验方法是比较法。
按仪表校验规定,必须选取比被校表的准确度等级至少高2级的仪表作为标准表,校验可用图1-1所示电路。
图1-1 比较法校验电路在仪表的整个刻度范围内,逐点比较被校表与标准表的差值△,根据△最大值的绝对值m ∆与被校表量程Am 之比的百分数%100mm m A ∆=ν,可以确定被校表的准确度等级。
如测得结果%1.2=νm,则被校表的准确度等级νn 为2.5级。
例:有一准确度为2.5级的电压表,其量程为100V ,在正常工作条件下,可产生的最大绝对误差(即:由于仪表本身结构的不精确所产生的基本误差)为:m n U U ⨯=∆ν=±2.5%×100=±2.5(V )对于量程相同的仪表,νn越小,所产生的U ∆就越小。
恒压源被测表恒压源被测表(a)校验电压表(b)校验电流表另外,用上述电压表分别测量实际值U 为5V 和100V 的电压时,测量结果的相对误差分别为:%5.2%1001005.2%50%10055.2%1008020±=⨯±=±=⨯±=⨯∆=ννU U可见,在选用仪表量程时,被测量程值愈接近仪表满量程值,相对测量误差越小。
触发器真值表

任务1触发器电路一、实验目的1、掌握D触发器、JK触发器等基本触发电路的原理与设计2、掌握时序电路的分析与设计的方法3、学习VHDL语言中构造体的不同描述方式的异同二、实验内容1、编写VHDL语言源程序,实现D触发器、JK触发器等基本触发电路2、扩展任务:设计其他如RS触发器,并分析它们相互转化的方法3、通过模拟和仿真,分析和验证各种出发器的逻辑功能及其触发方式三、实验要求1、列写D触发器、JK触发器的真值表2、编写实现D触发器、JK触发器功能的VHDL语言程序3、利用实验装置验证程序正确性,分析触发的方式4、写出完整的实验报告(包括上述图表和程序等)四、实验原理说明1、正边沿触发的D触发器的电路符号如图2-4所示。
从输入输出引脚而言,它有一个数据输入端d,一个时钟输入端clk和一个数据输出端q。
D触发器的真值表如表2-2所示。
从表中可以看出:D触发器的输出端只有在正边沿脉冲过后,输入端d的数据才可以被传递到输出端q。
表1D触发器真值表数据输入端时钟输入端clk 数据输出端qdX 0 不变X 1 不变0 - 01 - 12、带复位和置位功能的JK触发器电路符号如图2-5所示。
JK触发器的输入端有置位输s 复位输入clr,控制输入j和k,时钟输入clk;输出端有数据输出q和反向输出qb。
JK触发器的真值表如表2-3所示。
表2-3JK触发器真值表输入端输出端st clr clk j k Q qb0 1 X X X 1 01 0 X X X 0 10 0 X X X X X1 1 - 0 1 0 11 1 - 1 1 翻转翻转1 1 - 0 0 保持保持1 1 - 1 0 1 01 1 0 X X 保持保持编辑本段真值表定义表征逻辑事件输入和输出之间全部可能状态的表格。
真值表列出命题公式真假值的表。
通常以1表示真,0 表示假。
命题公式的取值由组成命题公式的命题变元的取值和命题联结词决定,命题联结词的真值表给出了真假值的算法。
离散数学实验

离散数学实验报告(实验一)专业:自动化班级:学号:姓名:日期2010.10.28一实验内容(二选一)1. 从键盘输入两个命题变元P和Q的真值,求它们的合取、析取、条件和双条件的真值(A)2. 求任意一个命题公式的真值表(B),并根据真值表求主范式(C)。
二实验目的熟悉掌握命题逻辑中的联接词、真值表、主范式等,进一步能用它们来解决实际问题。
三实验环境进入Visual C++ 环境后,选择菜单“File | New”,在弹出的对话框中单击上方的选项卡“Projects”,选择“Win32 Console Application”工程类型,在“Project name”一栏中填写工程名例如MyFirst,在“Location”一栏中填写工程路径(目录). 选择菜单“Project | Add to Project | New”,为工程添加新的C++源文件。
选择菜单为工程添加新源文件在“File Name”栏填入新添加的源文件名,如MyFirst.cpp,“Location”一栏指定文件路径,按按钮“OK”完成C++源程序的系统新建操作。
编译源程序:选择Build | Build菜单(F7为快捷键),系统将会在Output窗口给出所有的错误信息和警告信息。
当所有错误修正之后,系统将会生成扩展名为.exe的可执行文件。
对于Output窗口给出的错误信息,双击可以使输入焦点跳转到引起错误的源代码处以进行修改。
执行程序:选择Build | Execute菜单项(Ctrl + F5为快捷键),执行程序,将会出现一个DOS窗口,按照程序输入要求正确输入数据后,程序即正确执行。
四实验原理和实现过程(算法描述)1.程序主界面本程序界面主要有两个操作,1:求真值。
2:求任何公式的真值。
操作1完成A 类题要求,操作2完成A,B类题要求。
如果出输入的操作项不是0,1,2,则会提示出错,再次选择。
其界面如图所示:2.算法描述和实现过程在做A类题时,算法实现,首先判断输入格式是否正确,在把蕴含(→),等值(←→),通过变换,化成只有非,合取和析取的等价公式,在利用C语言中的运算符非(!),与(&&)和或(||)算出任何两元变量的真值。
大物实验数据处理

x Y ax c e f x3 x 4
b 1
总不确定度
d 2
Y YE(Y )
间接测量量的不确定度的计算过程分三步
1、先估计个直接测量量 X i 的不确定度 X i 2、写出不确定度的传递公式; 3、结果
Y Y Y Y 1 E (Y ) (单位)
M 例: V
(Y1 Y2 Y3 ) Y n
M V
Y的计算:
1、和差形式的函数
2
(如Y ax1 bx2 )
2
f f 2 2 Y x1 x2 x1 x2
2、乘积商形式的函数
测量结果x=
x
Δ (单位)
不确定度Δ值可以通过一定的方法估算。
2、测量结果的表达(报告)方法 测量结果的科学表达方法:
X X
(单位)
表达式的物理意义( X , X )
恒为正,不确定度与误差是完全不同的概念。
相对不确定度: E 100%
x
置信度
不确定度包括两方面:
仪器误差(限)举例
a:游标卡尺,仪器示值误差一律取卡尺分度值。
b:螺旋测微计,量程在0—25mm及25—50mm的一 级千分尺的仪器示值误差均为仪 0.004mm。 c:天平的示值误差,本书约定天平标尺分度值的 一半为仪器的示值误差。 d:电表的示值误差, m 量程 准确度等级%。
(0 8)
(6)求总不确定度
A B
2
2
(7)写出最终结果表示: x x
S 2 B n
E 100% x
(单位)
实验一组合逻辑电路设计

实验一组合逻辑电路设计一、简介组合逻辑电路是数字电路的一种重要类型,由逻辑门组成,并且没有存储功能。
它的输出只取决于当前的输入状态,与过去的输入状态无关。
本实验旨在设计一组使用逻辑门构成的组合逻辑电路。
二、设计目标本实验的设计目标是实现一个4位2进制加法器电路。
输入为两个4位的二进制数,输出为其和。
为了方便起见,我们假设输入的二进制数已经在输入端以2进制的形式输入。
三、设计思路1.首先,需要设计一个4位的全加器电路,用于对两个位的进位进行处理。
全加器电路由三个输入和两个输出组成。
2.其次,将4个全加器电路组成4位的加法器电路,将各个位的进位进行连接。
3.最后,将输入的两个4位二进制数,以及4个进位信号,分别连接到4个全加器电路的输入端,将各个位的和输出连接到最终的输出端。
四、详细设计1.全加器电路的设计全加器电路有三个输入和两个输出。
其中,三个输入分别为A、B和Cin,分别表示两个相加的输入和进位输入。
两个输出分别为Sum和Cout,分别表示两个输入的和和进位输出。
我们可以使用两个半加器和一个或门来实现全加器电路。
半加器的真值表如下:A B Sum Cout0000011010101101其中,Sum表示两个输入的和,Cout表示两个输入的进位。
将两个半加器按照如下方式连接起来即可构成全加器电路:A --->+------> SumB --->+----------,----> CoutCin --->,--+2.四位加法器电路的设计四位加法器电路由4个全加器电路连接组成。
其中,第一个全加器的输入分别为A0、B0和Cin,输出为S0和C0;第二个全加器的输入分别为A1、B1和C0,输出为S1和C1;依次类推,第三个全加器的输入为A2、B2和C1,输出为S2和C2;第四个全加器的输入为A3、B3和C2,输出为S3和C3将四个全加器按照如下方式连接起来即可构成四位加法器电路:A0--->+---------------->S0B0--->+-------Cin ----,-+-------------------,-------> C0A1---+---->,---------------->S1B1---+---->,-------C0----,--------------,-+---------------,------->C1A2---+------>,---------------->S2B2---+------>,-------C1----,-+---------------->C2A3---+-------+---->,---------------->S3B3---+-----,--------3.输入输出连接将输入的两个4位二进制数依次连接到四位加法器电路的输入端,将四位加法器电路的输出端连接到最终的输出端。
实验一-基本逻辑门电路实验

二 、 TTL、HC器件的电压传输特性
2.输出无负载时74LS00、74HC00电压传输特性测试数据
输入Vi(V)
0.0 0.2 … 1.2 1.4 … 4.8 5.0
74LS00
输出Vo
74HC00
二 、 TTL、HC和HCT器件的电压传输特性
3.输出无负载时74LS00、74HC00和 74HCT00电压传
互连规则与约束
TTL、CMOS器件的互连: 器件的互连总则
在电子产品的某些单板上,有时需要在某些逻辑电平的器件之间进行互连。 在不同逻辑电平器件之间进行互连时主要考虑以下几点: 1:电平关系,必须保证在各自的电平范围内工作,否则,不能满足正常逻辑 功能,严重时会烧毁芯片。 2:驱动能力,必须根据器件的特性参数仔细考虑,计算和试验,否则很可能 造成隐患,在电源波动,受到干扰时系统就会崩溃。 3:时延特性,在高速信号进行逻辑电平转换时,会带来较大的延时,设计时 一定要充分考虑其容限。 4:选用电平转换逻辑芯片时应慎重考虑,反复对比。通常逻辑电平转换芯片 为通用转换芯片,可靠性高,设计方便,简化了电路,但对于具体的设计电 路一定要考虑以上三种情况,合理选用。 对于数字电路来说,各种器件所需的输入电流、输出驱动电流不同,为了驱 动大电流器件、远距离传输、同时驱动多个器件,都需要审查电流驱动能力: 输出电流应大于负载所需输入电流;另一方面,TTL、CMOS、ECL等输入、输 出电平标准不一致,同时采用上述多种器件时应考虑电平之间的转换问题。
五、 不同逻辑电平接口转换及其应用
1.TTL与CMOS 2.CMOS与TTL 2.TTL与LVTTL 3.TTL与LVCMOS 4.LVTTL与TTL 5LVTTL与CMOS 5.LVCMOS与TTL 6.LVCMOS与CMOS 7.TTL/CMOS与ECL 8. LVTTL/LVCMOS与LVECL 9.其它
离散数学计算机实验报告

《离散数学》实验一、实验目的《离散数学》是现代数学的一个重要分支,是计算机科学与技术专业的基础理论课,也是该专业的核心课程和主干课程。
“离散数学”是计算机专业一门重要的专业技术基础课程,是计算机专业的一门核心的关键性课程。
该课程一方面为后继课程如数据结构、编绎原理、操作系统、数据库原理、人工智能和形式语言与自动机等提供必要的理论基础;同时,更为重要的是培养学生的抽象思维能力和逻辑推理能力,为今后的学习和工作打好基础。
无论从计算机学科发展的过去、现在和未来看,《离散数学》都是计算机科学与技术专业不可缺少的重要组成部分。
这门课程有着其它课程不可替代的地位和作用,是一门承前启后的课程。
根据《离散数学》课程本身的理论性较强的特性,为了帮助学生更好地学习本课程,理解和掌握所学基本概念和方法,为整个专业学习打好基础,要求运用所学知识,上机解决一些典型问题,设置实践环节十分重要。
通过实验实践内容的训练,突出逻辑性思维训练的特征, 目的是学习离散数学中的基本算法和方法,掌握数理逻辑、关系和图论中的基本算法,提高学生学习的兴趣及实际动手的能力。
通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握所学知识,培养分析、解决实际问题的能力。
二、实验要求掌握真值表技术,熟悉联结词合取、析取、条件和双条件的概念。
熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。
熟悉邻接矩阵和两结点间长度为m 的路的数目的关系。
熟悉最优树的构造算法,掌握最优树的构造过程。
实验前作好准备,分析问题并确定算法,设计代码。
做实验过程中认真分析和调试程序,记录并分析实验结果。
实验后完成实验报告,实验报告包括实验目的、实验内容、源程序、运行结果及分析。
可以使用C、VC或MATLAB完成实验。
实验题目包括真值计算、关系闭包计算、计算两结点间长度为m的路的数目、最优树的构造四个实验,每个实验要求2个学时完成。
三、实验设备及环境PC机一台,软件C、VC或MATLAB四、实验内容实验一真值计算1、实验目的熟悉五个常用联结词合取、析取、条件和双条件的概念,掌握真值表技术。
误差基本概念

R1 R2
R
(2)R不变,将可调标准电阻箱Rn
替换成Rx接入电桥,调Rn使电桥平衡
则
Rn
R1 R2
R
(3)∴Rx=Rn,消除了桥臂参数的
系统误差。
2 正负误差补偿法:(用于消除恒定系统误差)
在不同的试验条件下进行两次测量,使其读数一 次为正,一次为负,则两次读数的平均值将与恒 定系统误差无关。 例如:为了消除恒定直流外磁场对仪表读数的影响。
相对误差
£1-2 误差的来源与分类
一、 误差的来源
1 装备误差:
①标准器误差:如标准电阻,标准砝码的标称值误差。 ②仪表误差:测量所用工具的误差。 ③装备、附件误差:如谐波,不对称,非工频,引线、安装、
布置不合理等。
2 方法误差:(理论误差)
①测量方法理论根据不完善。 ②采用了近似公式等。
3 人员误差:测量人员的感觉器官或运动器官不完善
相对误差=绝对真误差/真值×100% ≈绝对真误差/给出值×100%
r x x x0 x
r越小,准确度越高。
3、引用误差
引用误差=绝对误差/满刻度值×100%
即:
rn
x xN
ห้องสมุดไป่ตู้
100 %
例如:电流表,满刻度为5A,测量值4A,实际值为4.02A
4 4.02 则: rn 5 100% 0.4%
可将仪表转过180度进行两次测量,然后取平 均值。 3 对称观测法 用测量数据的对称关系消除系统误差的方法。
例:谐振频率的测量
❖ 若通过测量U0来确定f0 会产生较大误差(∵峰 值处电压变化平坦)
❖ 若在某—U1 下,测试
f1 和f2
f1
1 2
离散数学实验指导书(附带模板)

《离散数学》实验指导书一、实验目的《离散数学》是现代数学的一个重要分支,是计算机科学与技术专业的基础理论课,也是该专业的核心课程和主干课程。
“离散数学”是计算机专业一门重要的专业技术基础课程,是计算机专业的一门核心的关键性课程。
该课程一方面为后继课程如数据结构、编绎原理、操作系统、数据库原理、人工智能和形式语言与自动机等提供必要的理论基础;同时,更为重要的是培养学生的抽象思维能力和逻辑推理能力,为今后的学习和工作打好基础。
无论从计算机学科发展的过去、现在和未来看,《离散数学》都是计算机科学与技术专业不可缺少的重要组成部分。
这门课程有着其它课程不可替代的地位和作用,是一门承前启后的课程。
根据《离散数学》课程本身的理论性较强的特性,为了帮助学生更好地学习本课程,理解和掌握所学基本概念和方法,为整个专业学习打好基础,要求运用所学知识,上机解决一些典型问题,设置实践环节十分重要。
通过实验实践内容的训练,突出逻辑性思维训练的特征, 目的是学习离散数学中的基本算法和方法,掌握数理逻辑、关系和图论中的基本算法,提高学生学习的兴趣及实际动手的能力。
通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握所学知识,培养分析、解决实际问题的能力。
二、实验要求掌握真值表技术,熟悉联结词合取、析取、条件和双条件的概念。
熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。
熟悉邻接矩阵和两结点间长度为m 的路的数目的关系。
熟悉最优树的构造算法,掌握最优树的构造过程。
实验前作好准备,分析问题并确定算法,设计代码。
做实验过程中认真分析和调试程序,记录并分析实验结果。
实验后完成实验报告,实验报告包括实验目的、实验内容、源程序、运行结果及分析。
可以使用C、VC或MATLAB完成实验。
实验题目包括真值计算、关系闭包计算、计算两结点间长度为m的路的数目、最优树的构造四个实验,每个实验要求2个学时完成。
三、实验设备及环境PC机一台,软件C、VC或MATLAB四、实验内容实验一真值计算1、实验目的熟悉五个常用联结词合取、析取、条件和双条件的概念,掌握真值表技术。
实验数据的处理

实验数据的处理通过实验测得原始数据后需要进行计算将最终的实验结果归纳成经验公式或以图表的形式表示,以便与理论结果比较分析。
因此由实验而获取的数据必须经过正确的处理和分析,只有正确的结论才能经得起检验。
下面介绍这方面的基本知识。
一、有效数字与运算规律1.有效数字在测量和实验中,我们经常遇到两类数字,一类是无单位的数字,例如圆周率π等,其有效数字位数可多可少,根据我们的需要来确定有效数字。
另一类是表示测量结果有单位的数字,例如:温度、压强、流量等。
这类数字不仅有单位,且它们最后一位数字往往由仪表的精度而估计的数字,例如精度为1/10℃的温度计,读得21.75℃,则最后一位是估计的,所以记录或测量数据时通常以仪表最小刻度后保留一位有效数字。
在科学与工程中为了能清楚地表示数值的准确度与精度和方便运算,在第一个有效数字后加小数点,而数值的数量级则用10的幂表示,这种用10的幂来记数的方法称为科学记数法。
例如:,可记为。
2.有效数字的运算规律(1)在加减运算中,各数所保留的小数点后的位数应与其中小数点的位数最少的相同,例如:。
(2)在乘除运算中,各数所保留的位数以有效数字最少的为准,例如:将0.0135,17.53,2.45824三数相乘应写成。
(3)乘方及开方运算的结果比原数据多保留一位有效数字,例如:,。
(4)对数运算,取对数前后的有效数字相等,例如:,。
二、实验数据的误差分析测得的实验值与真值之差值称测定值的误差,测定误差的估算与分析对实验结果的准确性具有重要的意义。
1.真值与平均值任何一个被测量的物理量总存在一定的客观真实值,即真值,由于测量的仪器、方法等引起的误差,真值一般不能直接测得,若在实验中无限多次的测量时,则根据误差分布定律,正负误差出现的几率相等,将各个测量值相加并加以平均,在无系统误差的情况下,可能获得近似于真值的数值,因此实验科学给真值定义为:无限多次的测量平均值称为真值。
而在实际测量中的次数是有限的,故用有限测量次数求出的平均值,只能是近似真值,称最佳值。
实验一 真值计算

实验一真值计算一、实验目的熟悉联结词合取、析取、条件和双条件的概念,编程求其真值。
二、实验内容从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。
用C语言实现。
三、实验报告要求列出实验目的、实验内容、实验步骤、源程序和实验结果。
实验二关系闭包计算一、实验目的熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。
二、二、实验内容从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包传递闭包要求使用两种算法,即R+和Warshall算法。
用C语言实现。
二、实验报告要求列出实验目的、实验内容、实验步骤、源程序和实验结果。
#include<stdio.h>int main(){int i,j,k,n;static int str[122],zifan[122],chuandi[122],duich[122];printf("Please input the jie:\n");scanf("%d",&n);printf("A=%d\n",n);for(i=0;i<n*n;i++){scanf("%d",&str[i]);}printf("The shu zu is:\n");for(j=0;j<n*n;j++){printf("%4d",str[j]);if((j+1)%n==0)printf("\n");}for(j=0;j<n*n;j++){zifan[j]=str[j];chuandi[j]=str[j];duich[j]=str[j];}printf("The zifan bibao is:\n");for(i=0;i<n*n;i++){if(i%(n+1)==0)zifan[i]=zifan[i]||1;printf("%4d",zifan[i]);if((i+1)%n==0)printf("\n");}printf("The duich bibao is:\n");for(i=0,j=0;i<n*n&&j<n;i++){if(i>j*(n+1)&&i<(j+1)*n){duich[i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];duich[(i-j*(n+1))*(n-1)+i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];}else if(i>=(j+1)*n)j++;}for(i=0;i<n*n;i++){printf("%4d",duich[i]);if((i+1)%n==0)printf("\n");}printf("The chuandi bibao is:\n");for(i=0;i<n;i++)for(j=0;j<n;j++)if(chuandi[j*n+i]){for(k=0;k<n;k++)chuandi[j*n+k]=chuandi[j*n+k]||chuandi[i*n+k];}for(i=0;i<n*n;i++){printf("%4d",chuandi[i]);if((i+1)%n==0)printf("\n");}return 0;}实验三计算两结点间长度为m的路的数目一、实验目的熟悉邻接矩阵和两结点间长度为m的路的数目的关系并编程计算。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一真值计算
一、实验目的
熟悉联结词合取、析取、条件和双条件的概念,编程求其真值。
二、实验内容
从键盘输入两个命题P和Q的真值,求它们的合取、析取、条件和双条件的真值。
用C语言实现。
三、实验报告要求
列出实验目的、实验内容、实验步骤、源程序和实验结果。
实验二关系闭包计算
一、实验目的
熟悉Warshall算法,掌握求关系的自反闭包、对称闭包和传递闭包的方法。
二、二、实验内容
从键盘输入一个关系的关系矩阵,计算其自反闭包、对称闭包和传递闭包传递闭包要求使用两种算法,即R+和Warshall算法。
用C语言实现。
二、实验报告要求
列出实验目的、实验内容、实验步骤、源程序和实验结果。
#include<stdio.h>
int main()
{
int i,j,k,n;
static int str[122],zifan[122],chuandi[122],duich[122];
printf("Please input the jie:\n");
scanf("%d",&n);
printf("A=%d\n",n);
for(i=0;i<n*n;i++)
{
scanf("%d",&str[i]);
}
printf("The shu zu is:\n");
for(j=0;j<n*n;j++)
{
printf("%4d",str[j]);
if((j+1)%n==0)
printf("\n");
}
for(j=0;j<n*n;j++)
{
zifan[j]=str[j];
chuandi[j]=str[j];
duich[j]=str[j];
}
printf("The zifan bibao is:\n");
for(i=0;i<n*n;i++)
{
if(i%(n+1)==0)
zifan[i]=zifan[i]||1;
printf("%4d",zifan[i]);
if((i+1)%n==0)
printf("\n");
}
printf("The duich bibao is:\n");
for(i=0,j=0;i<n*n&&j<n;i++)
{
if(i>j*(n+1)&&i<(j+1)*n)
{
duich[i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];
duich[(i-j*(n+1))*(n-1)+i]=duich[(i-j*(n+1))*(n-1)+i]||duich[i];
}
else if(i>=(j+1)*n)
j++;
}
for(i=0;i<n*n;i++)
{
printf("%4d",duich[i]);
if((i+1)%n==0)
printf("\n");
}
printf("The chuandi bibao is:\n");
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(chuandi[j*n+i])
{for(k=0;k<n;k++)
chuandi[j*n+k]=chuandi[j*n+k]||chuandi[i*n+k];
}
for(i=0;i<n*n;i++)
{
printf("%4d",chuandi[i]);
if((i+1)%n==0)
printf("\n");
}
return 0;
}
实验三计算两结点间长度为m的路的数目
一、实验目的
熟悉邻接矩阵和两结点间长度为m的路的数目的关系并编程计算。
二、实验内容
从键盘输入图的邻接矩阵和一正整数m,计算结点两两之间长度为m的路的数目。
考虑有向图和无向图。
用C语言实现。
实现可达性矩阵。
三、实验报告要求
列出实验目的、实验内容、实验步骤、源程序和实验结果。
#include <iostream.h>
class luchang
{
private:
int N;
int **p;
public:
luchang(int n);
~luchang();
int input();
luchang &operator =(luchang &A);
luchang &mul(luchang &A,luchang &B);
void disply();
int disply(int M);
};
luchang::luchang(int n)
{
N=n;
int i;
p=new int*[N];
for (i=0;i<N;i++)
p[i]=new int[N];
}
luchang::~luchang()
{
int i;
for (i=0;i<N;i++)
delete p[i];
delete p;
}
int luchang::input()
{
int i,j;
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
cin>>p[i][j];
}
return 0;
}
luchang& luchang::operator =(luchang &A) {
int i,j;
for (i=0;i<N;i++)
{
for(j=0;j<N;j++)
p[i][j]=A.p[i][j];
}
return *this;
}
luchang& luchang::mul(luchang &A,luchang &B) {
int i,j,k,sum=0;
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
for (k=0;k<N;k++)
{
sum+=B.p[i][k]*A.p[k][j];
p[i][j]=sum;
}
sum=0;
}
}
return *this;
}
void luchang::disply()
{
for (int i=0;i<N;i++){
for (int j=0;j<N;j++)
cout<<p[i][j]<<" ";
cout<<endl;
}
}
int luchang::disply(int M)
{
int i,j;
int count=0;
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
if (p[i][j]==M)
count++;
else continue;
}
}
cout<<count<<endl;
实验四最优树的构造
一、实验目的
熟悉最优树的构造算法,掌握最优树的构造过程。
二、实验内容
从键盘输入一组权值,构造出对应的最优树,列出构造过程。
用C语言实现。
三、实验报告要求
列出实验目的、实验内容、实验步骤、源程序和实验结果。