文档库 最新最全的文档下载
当前位置:文档库 › 实验十三 过程

实验十三 过程

实验十三 过程
实验十三 过程

实验十三过程(一)

实验目的:

1、理解自定义函数过程的定义和调用方法;

2、掌握自定义子过程的定义和调用方法;

3、掌握子过程与函数过程的使用差别;

4、掌握形参和实参使用方法;

实验内容:

1、编写一函数过程Fac(n),对于已知正整数n,求其阶乘值。主程序分别输入两个正整数X和Y,计算并输出x!+(x+1)! +(x+2)! + …… +(x+y)!之和。Private Sub Command1_Click()

Dim x%, y%, sum#, i%

x = InputBox("x=")

y = InputBox("y=")

For i = x To x + y

sum = sum + fac(i)

Next

Print "结果为:"; sum

End Sub

Function fac#(n%)

Dim j%

fac = 1

For j = 1 To n

fac = fac * j

Next

End Function

2、窗体上包含有两个名称分别为Op1和Op2

的单选按钮,标题分别为“100-200的素数和”和

“200-400的素数和”。还有一个文本框和两个命

令按钮,标题分别为“求和”和“写入”。程序运行后,选中某个单选按钮,并

单击“求和”按钮,则计算指明范围内的素数之和,并显示在文本框中。单击

“写入”,则把结果存入Out.txt中。(写入以及判断素数分别用过程和函数来实现。

提示:编写一函数过程Prime(n),对于已知正整数n,判断该数是否为素

数,函数的返回值类型为布尔型。

Dim sum%

Private Sub Command1_Click()

Dim a%, b%

sum = 0

If Option1.Value Then

a = 100:

b = 200

Else

a = 200:

b = 400

End If

For i = a To b

If prime(i) Then sum = sum + i

Next i

Text1 = sum

End Sub

Private Sub Command2_Click()

writein (sum)

End Sub

Function prime(n) As Boolean

prime = True

For i = 2 To Sqr(n)

If n Mod i = 0 Then

prime = False

Exit For

End If

Next i

End Function

Sub writein(k%)

Open ".\Out.txt" For Output As #1

Print #1, k

Close #1

End Sub

3、利用上题中判断素数的函数,编写程序找出1~100之间的所有孪生素数(若两个素数之差为2,则这两个素数就是一对孪生素数)。例如:3和5、5和7、11和13等都是孪生素数。

【提示】如果n和n+2都是素数,那就是孪生素数。

Public Function IsP(m) As Boolean

Dim I%

IsP = True

For I = 2 To Int(Sqr(m))

If m Mod I = 0 Then

IsP = False

Exit For

End If

Next I

End Function

Private Sub Command1_Click()

Dim I%

For I = 3 To 100 Step 2

If IsP(I) And IsP(I + 2) Then Print I; I + 2

Next I

End Sub

Private Sub Command3_Click()

End

End Sub

Private Sub Command2_Click()

Cls

End Sub

【选作题】编写一子过程Delestr(s1,s2),将字符串s1中出现s2子字符串删去,结果仍旧存放于s1中。

【提示】

(1)在S1字符串中找S2的子字符串,可利用Instr( )函数,要考虑到S1中可能存在多少或不存在S2字符串,用Do while Instr(s1,s2)>0循环结构来实现。

(2)若在S1中找到S2字符串,首先确定S1 字符串,首先要确定S1字符串的长度,因S1字符串在进行多次删除时,长度在变化。然后通过Left ()、Mid()函数或Right()函数的调用达到删除S1中存在的S2字符串。

Private Sub DeleStr(s1 As String, ByVal s2 As String)

Dim i%

i = InStr(s1, s2)

ls2 = Len(s2)

Do While i > 0

ls1 = Len(s1)

s1 = Left(s1, i - 1) + Right(s1, ls1 - (i + ls2) + 1) i = InStr(s1, s2)

Loop

End Sub

Private Sub Command1_Click()

Dim b As String

b = Text1

Call DeleStr(b, Text2)

Text3 = b

End Sub

数据结构实验 散列表实验报告

课程实验报告 课程名称:数据结构 实验项目名称:散列表 专业班级: 姓名:XXX 学号: 完成时间:2015 年06 月13 日

背景 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。在理想情况下,查找、插入、删除操作的时间均为O(1),是一种高效的动态集合结构。 例1:计算机程序设计语言的编译程序需要维护一个符号表,其中元素的关键值为任意字符串,与语言中的标识符对应。该符号表常采用散列表。 例2:为了节约空间,常常需要把文本文件采用压缩编码方式存储。LZW是对文本文件进行压缩和解压缩的方法之一,该方法采用了散列。 问题描述 我们希望在浩瀚的图书中,去发现一本书是否存在。我们不知道书的编号,只知道它的书名。(其实这已经不错了...)。通过书名,来查询它是否存在。 为了简化问题,我们假设每本书的书名都是一组小写字母组成,长度不超过100字符。 基本要求 (1)根据输入建立图书名称表,采用散列表实现该表,散列函数选用BKDE 字符串哈希。 (2)数据的输入输出格式: 输入分为两部分 第一部分,第一行是行数n,n <= 5000。余下n行,每行一个字符串。表示已存 在的图书记录。 第二部分,第一行是行数m,m <= 1000。余下m行,每行一个字符串。表示要查 询的图书记录。 输出: 输出为m行,如果被查的记录存在,则输出"YES",如果不存在则输出"NO"。 测试数据 输入: 4 a ans and hellocpp

实验九 函数的重载和变量的作用域

实验九函数的重载和变量的作用域 一、实验目的 1、了解内联函数、重载函数、带默认参数函数的定义及使用方法。 2、掌握作用域的概念、变量的存储类型及它们之间的差别。 3、掌握程序的多文件组织。 二、实验内容 1、重载函数允许不同的函数使用相同的名字,这使得完成类似的任务时可以使用相同的函数名。 范例:编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,计算边长为1的正方形及其内切圆、内接等腰三角形和等腰梯形面积。 函数原型如下: double area(double radius=0); //圆面积,参数为半径,默认参数为0,表示点面积 double area(double a, double b); // 计算矩形面积,参数为长和宽 double area(double a, double b, double h); //计算梯形面积,参数为两底和高 double area(double a, double b, double c, int); //计算三角形面积,参数为三边长,int 型参数起标示作用,以区别于梯形,不参加计算。 #include #include using namespace std; const double PI=3.14159; double area(double radius=0); double area(double a,double b); double area(double a,double b,double h); double area(double a,double b,double c,int); int main(){ cout<<"Area of point is"<

Witness算法

《应用密码学》课程论文 论文题目: WITNESS算法 姓名: 学号: 专业班级: 联系电话: 2014年10月

WITNES算法 一、算法原理 在实现RSA密码体质的过程中,为使RSA安全,我们需要找到足够大的素数,使其在运算上相当困难。如何判断一个奇整数n是否是素数呢?这里就需要用到Miller和Rabin提出的WITNESS算法。 在介绍WITNESS算法之前,先介绍两个相关的定理。 Fermat定理:假如a是整数,p是素数,且a,p互质(即两者只有一个公约数 1),那么a的(p-1)次方除以p的余数恒等于1,即a p-1≡1(mod p)。 二次探测定理:如果x是整数,p是素数,且00,q为奇数),也就是用2除(n-1),直至所得结果为奇数,共做了k次除法。选一个整数a,0

2.代码 /*WITNESS算法思想: (n-1)是偶数,可表示为2的某次幂与一个奇数的乘积,(n-1)=(2^k) * q,k>0,q为奇数;即用2除(n-1),直至所得结果为奇数,共做了k次除法; 选一个整数a,0 # include # include # include int judge( int k, long long int n, int a, int b[]); void main(){ long long int n;//待测数据n int *b = 0;// n - 1 的2进制表示 int length = 0;//n - 1的2进制数的长度 int *a = 0;//储存随机数的一个数组 int length_s;//随机数组中随机数的个数 int flag;//标志位,0可能为素数,1 一定是合数 int count;//计数时用的变量 //输入待测数据以及范围界定 printf("请输入需要测试的数n ( 1 < n < 18446744073709551616,共20位) :"); scanf("%lld", &n); while(n <= 1 || n >= 18446744073709551615){ printf("输入越界,请重新输入需要测试的数n ( 1 < n < 18446744073709551616 ,共20位) :"); scanf("%lld", &n); } //输入随机数组的长度s printf("输入随机数组成的数组的长度length_s 的最大值(1 < length_s <= 100) :"); scanf("%d", &length_s); while( length_s <= 1 || length_s > 100){ printf("输入错误,请重新输入随机数组成的数组的长度length_s 的最大值(1 < length_s <= 100) :"); scanf("%d", &length_s);

哈希表实验报告完整版

实验报告 姓名:学号: 1.实验题目 针对某个集体中人名设计一个哈希表,使得平均查找长度不超过R,并完成相应的建表和查表程序。 基本要求:假设人名为中国人姓名的汉语拼音形式。待填入哈希表的人名共有30个,取平均查找长度的上限为2。哈希函数用除留余数法构造,用线性探测再散列法或链地址法处理冲突。 2.需求分析 本演示程序用VC编写,完成哈希函数用除留余数法构造,用线性探测再散列法或链地址法处理冲突。 输出形式:地址,关键字,收索长度,H(key),拼音 3.概要设计 typedef struct NAME typedef struct hterm void InitNameList() void CreateHashList() void FindList() void Display() int main() 4.详细设计 #include #include #include

#define HASH_LEN 50 #define M 47 #define NAME_NO 8 typedef struct NAME { char *py; //名字的拼音 int k; //拼音所对应的整数}NAME; NAME NameList[HASH_LEN]; typedef struct hterm //哈希表{ char *py; //名字的拼音 int k; //拼音所对应的整数int si; //查找长度 }HASH; HASH HashList[HASH_LEN]; void InitNameList() { NameList[0].py="houxinming"; NameList[1].py="abc"; NameList[2].py="defdgf"; NameList[3].py="zhangrji"; NameList[4].py="jiaxin"; NameList[5].py="xiaokai"; NameList[6].py="liupeng"; NameList[7].py="shenyonghai";

数字电子技术实验报告

专业: 班级: 学号: 姓名: 指导教师: 电气学院

实验一集成门电路逻辑功能测试 一、实验目的 1. 验证常用集成门电路的逻辑功能; 2. 熟悉各种门电路的逻辑符号; 3. 熟悉TTL集成电路的特点,使用规则和使用方法。 二、实验设备及器件 1. 数字电路实验箱 2. 万用表 3. 74LS00四2输入与非门1片74LS86四2输入异或门1片 74LS11三3输入与门1片74LS32四2输入或门1片 74LS04反相器1片 三、实验原理 集成逻辑门电路是最简单,最基本的数字集成元件,目前已有种类齐全集成门电路。TTL集成电路由于工作速度高,输出幅度大,种类多,不宜损坏等特点而得到广泛使用,特别对学生进行实验论证,选用TTL电路较合适,因此这里使用了74LS系列的TTL成路,它的电源电压为5V+10%,逻辑高电平“1”时>2.4V,低电平“0”时<0.4V。实验使用的集成电路都采用的是双列直插式封装形式,其管脚的识别方法为:将集成块的正面(印有集成电路型号标记面)对着使用者,集成电路上的标识凹口左,左下角第一脚为1脚,按逆时针方向顺序排布其管脚。 四、实验内容 ㈠根据接线图连接,测试各门电路逻辑功能 1. 利用Multisim画出以74LS11为测试器件的与门逻辑功能仿真图如下

按表1—1要求用开关改变输入端A,B,C的状态,借助指示灯观测各相应输出端F的状态,当电平指示灯亮时记为1,灭时记为0,把测试结果填入表1—1中。 表1-1 74LS11逻辑功能表 输入状态输出状态 A B C Y 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 悬空 1 1 1 悬空0 0 0 2. 利用Multisim画出以74LS32为测试器件的或门逻辑功能仿真图如下

实验九 数组

实验九数组 一、实验目的 ①掌握数组的声明、数组元素的引用。 ②掌握静态数组和动态数组的使用差别。 ③掌握用数组解决与数组有关的常用算法,如:求最大(最小)值、求和、求平均值、排序(冒泡法排序、选择法排序和插入法排序)和查找等。 二、实验任务 实验内容1: 设有如下两组数据:A:2,8,7,6,4,26,24B:79,27,32,40,57,66,82 编写一个程序,把上面两组数据分别读入两个数组中,然后把两个数组中对应下标的元素相加,即2+79,8+27,…,24+82,并把相应的结果放入第三个数组中,最后输出第三个数组的值。分别以姓名1.frm 和姓名1.vbp为窗体名和工程名保存在计算机上。 【分析】 两个一维数组中下标相同的元素相加之和是第三个一维数组中对应下标的元素。 实验内容2: 使用Array函数给数组进行初始化为:6,2,5,8,9,15,26,18,然后计算数组各元素的和,并在窗体上输出数组各元素的值和数组元素的和。分别以姓名 2.frm 和姓名2.vbp为窗体名和工程名保存在计算机上。 【分析】 ?Array函数只能给variant类型的数组变量进行初始化,只能给一位数组进行初始化 ?数组的元素类型必须相同,单如果数组类型是variant时,可以包含不同类型的元 素 ?数组的下界缺省为0,也可用option语句将数组的下界设置为1.数组的上界可通过 ubound函数获得。 实验内容3: 从键盘上输入10个整数,并放入一个一维数组中, 然后将其前5个元素与后5个元素对换,即:第1个 元素与第10个元素互换,第2个元素与第9个元素互 换……第5个元素与第6个元素互换。分别输出数组 原来各元素的值和对换后各元素的值。 【分析】 同一数组中元素的互换与变量交换值是类同的, 需要借助与第三个变量来作为中转的对象。

实验一 熟悉Witness 操作环境实验

实验一熟悉Witness 操作环境实验 学号101206050111姓名田映瑾 一、实验思考题 1. Witness 系统有哪几个主菜单项? 答:菜单栏位于屏幕的第二行,它包含:File(文件)、Edit(编辑)、View (显示)、Model (模型)、Elements(元素)、Reports(报表)、Run(运行)、Window(窗口)、Help(帮助)九 个菜单选项 2. Witness 系统默认打开的文件是什么? 答: 3. Witness 系统界面包括哪几个窗口? 答:

4. Witness 系统有多少类建模元素? 答:有5类建模元素:图形元素逻辑元素运输逻辑型元素连续型元素离散型元素 5. 如何打开和关闭Witness 系统的工具栏? 答:如图 1.5 所示,来打开 Witness 系统

当要退出 WITNESS 系统时,可以使用以下几种方法 (1)在 WITNESS主菜单(如图 1.7 所示)中,打开“File”菜单,选择“Exit”选项; (2)按 ALT+F4 组合键; (3)在 WITNESS主菜单(如图 1.7 所示)中,单击其右上角的按钮;(4)双击系统程序图标。 6. 如何通过工具栏控制仿真时长? 答: 在这个工具栏了设置仿真时长 7. Stage4.mod 仿真项目中用到了哪几类建模元素? 答:零部件(Part or Entitie);机器(Machine);输送链(Conveyor);劳动者(Labor) 8. 如何以图形或表格的方式显示仿真项目中的统计数据? 答:在元素上点右键点击statistics就可以统计 二、stage4模型描述 答: 三、仿真结果分析 答:

数据结构课程设计--哈希表实验报告

福建工程学院 课程设计 课程:算法与数据结构 题目:哈希表 专业:网络工程 班级:xxxxxx班 座号:xxxxxxxxxxxx 姓名:xxxxxxx 2011年12 月31 日 实验题目:哈希表 一、要解决的问题 针对同班同学信息设计一个通讯录,学生信息有姓名,学号,电话号码等。以学生姓名为关键字设计哈希表,并完成相应的建表和查表程序。 基本要求:姓名以汉语拼音形式,待填入哈希表的人名约30个,自行设计哈希函数,用线性探测再散列法或链地址法处理冲突;在查找的过程中给出比较的次数。完成按姓名查询的操作。 运行的环境:Microsoft Visual C++ 6.0 二、算法基本思想描述 设计一个哈希表(哈希表内的元素为自定义的结构体)用来存放待填入的30个人名,人名为中国姓名的汉语拼音形式,用除留余数法构造哈希函数,用线性探查法解决哈希冲突。建立哈希表并且将其显示出来。通过要查找的关键字用哈希函数计算出相应的地址来查找人名。通过循环语句调用数组中保存的数据来显示哈希表。 三、设计 1、数据结构的设计和说明 (1)结构体的定义 typedef struct //记录 { NA name; NA xuehao; NA tel; }Record;

{ Record *elem[HASHSIZE]; //数据元素存储基址 int count; //当前数据元素个数 int size; //当前容量 }HashTable; 哈希表元素的定义,包含数据元素存储基址、数据元素个数、当前容量。 2、关键算法的设计 (1)姓名的折叠处理 long fold(NA s) //人名的折叠处理 { char *p; long sum=0; NA ss; strcpy(ss,s); //复制字符串,不改变原字符串的大小写 strupr(ss); //将字符串ss转换为大写形式 p=ss; while(*p!='\0') sum+=*p++; printf("\nsum====================%d",sum); return sum; } (2)建立哈希表 1、用除留余数法构建哈希函数 2、用线性探测再散列法处理冲突 int Hash1(NA str) //哈希函数 { long n; int m; n=fold(str); //先将用户名进行折叠处理 m=n%HASHSIZE; //折叠处理后的数,用除留余数法构造哈希函数 return m; //并返回模值 }Status collision(int p,int c) //冲突处理函数,采用二次探测再散列法解决冲突{ int i,q; i=c/2+1; while(i=0) return q; else i=c/2+1; } else{ q=(p-i*i)%HASHSIZE; c++;

#电力电子技术实验报告答案

实验一锯齿波同步移相触发电路实验 一、实验目的 (1)加深理解锯齿波同步移相触发电路的工作原理及各元件的作用。 (2)掌握锯齿波同步移相触发电路的调试方法。 三、实验线路及原理 锯齿波同步移相触发电路的原理图如图1-11所示。锯齿波同步移相触发电路由同步检测、锯齿波形成、移相控制、脉冲形成、脉冲放大等环节组成,其工作原理可参见1-3节和电力电子技术教材中的相关内容。 四、实验内容 (1)锯齿波同步移相触发电路的调试。 (2)锯齿波同步移相触发电路各点波形的观察和分析。 五、预习要求 (1)阅读本教材1-3节及电力电子技术教材中有关锯齿波同步移相 触发电路的内容,弄清锯齿波同步移相触发电路的工作原理。 (2)掌握锯齿波同步移相触发电路脉冲初始相位的调整方法。 六、思考题 (1)锯齿波同步移相触发电路有哪些特点? (2)锯齿波同步移相触发电路的移相范围与哪些参数有关? (3)为什么锯齿波同步移相触发电路的脉冲移相范围比正弦波同步移相触发电路的移相范围要大? 七、实验方法 (1)将DJK01电源控制屏的电源选择开关打到“直流调速”侧,使输出线电压为200V(不能打到“交流调速”侧工作,因为DJK03-1的正常工作电源电压为220V 10%,而“交流调速”侧输出的线电压为240V。如果输入电压超出其标准工作范围,挂件的使用寿命将减少,甚至会导致挂件的损坏。在“DZSZ-1型电机及自动控制实验装置”上使用时,通过操作控制屏左侧的自藕调压器,将输出的线电压调到220V左右,然后才能将电源接入挂件),用两根导线将200V交流电压接到DJK03-1的“外接220V”端,按下“启动”按钮,打开DJK03-1电源开关,这时挂件中所有的触发电路都开始工作,用双踪示波器观察锯齿波同步触发电路各观察孔的电压波形。 ①同时观察同步电压和“1”点的电压波形,了解“1”点波形形成的原因。 ②观察“1”、“2”点的电压波形,了解锯齿波宽度和“1”点电压波形的关系。 ③调节电位器RP1,观测“2”点锯齿波斜率的变化。 ④观察“3”~“6”点电压波形和输出电压的波形,记下各波形的幅值与宽度,并比较“3”点电压U3和“6”点电压U6的对应关系。 (2)调节触发脉冲的移相范围

C++实验九类和对象的使用实验报告

实验九类和对象的使用实验报告 一实验目的 1、学会用构造函数对类对象进行初始化 2、掌握析构函数,并了解构造函数和析构函数的调用顺序 3、了解对象数组和对象指针的用法 4、学会共用数据的保护,了解常对象、常成员函数等的使用限制 二实验内容和要求 1.回顾课本知识,掌握重点和难点,认真分析例题熟悉本章内容。 2.完成本章课后习题2、6、7题,认真分析每一题的代码。 三实验环境 Visual C++6.0开发环境 四源程序 2、 #include using namespace std; class Date { public: Date(int,int,int); Date(int,int); Date(int); Date(); void display(); private: int month; int day; int year; }; Date::Date(intm,intd,int y):month(m),day(d),year(y) {} Date::Date(intm,int d):month(m),day(d) {year=2005;} Date::Date(int m):month(m) { day=1; year=2005; }

Date::Date() { month=1; day=1; year=2005; } void Date::display() { cout< using namespace std; class Student { public: Student(intn,float s):num(n),score(s) {}; void change(intn,float s) { num=n; score=s; } void display() { cout<

基于witness的系统建模与仿真实验报告

多路径生产仿真模型 S11085240007 物流工程 一、实验名称:多路径生产仿真模型 二、实验目的 1)了解结合路径path的系统设计。 2)熟悉系统元素Part、Machine、Buffer、Variable、Labor、Attribute的用法。3)深入研究系统元素Machine的用法。 4)研究机器、缓冲区结合路径以及劳动者之间协作所形成系统的运行效率。 三、实验设备仪器 计算机、Witness仿真软件 四、实验内容 1、元素定义(Define) 本系统的元素定义如表1所示。 表1 实体元素定义 元素名称类型数量说明Back Part 1 部件 Seat Part 1 部件 Legs Part 1 部件 B1buffer 1 缓冲区 B2buffer 1 缓冲区 B3buffer 1 缓冲区Paint_Q buffer 1 缓冲区Inspection_Q buffer 1 缓冲区 Packing_Q buffer 1 缓冲区 path1Path 1 路径 Path2Path 1 路径 Path3Path 1 路径 Path4Path 1 路径 Path5Path 1 路径 Assembly machine 1 组装机器 Painting machine 1 染色机器 Inspection machine 1 检验机器 Packing machine 1 包装机器 Inspector labor 1 质检员x variable 1 变量attribute c 1 属性

2、元素可视化(Display)设置 各个实体元素的显示特征定义设置如下图所示 3、元素细节(Detail)设计 1对Part各元素细节设计 ●可视化效果设定 ●属性定义: seat.Arrival Type=Active seat.inter Arrival=2.0 back.Arrival Type=Active back.inter Arrival=2.0 legs.Arrival Type=Active legs.inter Arrival=2.0 ●规则定义: seat’s output Rules: PUSH to B1 back’s output Rules: PUSH to B2 legs’ output Rules: PUSH to B3 2对Buffer各元素细节设计 display 选项中对话框对buffer icon 、name、part queue属性进行设置;3对Machine各元素的细节设计 属性定义: Assembly.Type=Assembly Assembly.Cycle Time=6.0

数字电子技术实验报告汇总

《数字电子技术》实验报告 实验序号:01 实验项目名称:门电路逻辑功能及测试 学号姓名专业、班级 实验地点物联网实验室指导教师时间2016.9.19 一、实验目的 1. 熟悉门电路的逻辑功能、逻辑表达式、逻辑符号、等效逻辑图。 2. 掌握数字电路实验箱及示波器的使用方法。 3、学会检测基本门电路的方法。 二、实验仪器及材料 1、仪器设备:双踪示波器、数字万用表、数字电路实验箱 2. 器件: 74LS00 二输入端四与非门2片 74LS20 四输入端双与非门1片 74LS86 二输入端四异或门1片 三、预习要求 1. 预习门电路相应的逻辑表达式。 2. 熟悉所用集成电路的引脚排列及用途。 四、实验内容及步骤 实验前按数字电路实验箱使用说明书先检查电源是否正常,然后选择实验用的集成块芯片插入实验箱中对应的IC座,按自己设计的实验接线图接好连线。注意集成块芯片不能插反。线接好后经实验指导教师检查无误方可通电实验。实验中

1.与非门电路逻辑功能的测试 (1)选用双四输入与非门74LS20一片,插入数字电路实验箱中对应的IC座,按图1.1接线、输入端1、2、4、5、分别接到K1~K4的逻辑开关输出插口,输出端接电平显 图 1.1 示发光二极管D1~D4任意一个。 (2)将逻辑开关按表1.1的状态,分别测输出电压及逻辑状态。 表1.1 输入输出 1(k1) 2(k2) 4(k3) 5(k4) Y 电压值(v) H H H H 0 0 L H H H 1 1 L L H H 1 1 L L L H 1 1 L L L L 1 1 2. 异或门逻辑功能的测试

图 1.2 (1)选二输入四异或门电路74LS86,按图1.2接线,输入端1、2、4、5接逻辑开关(K1~K4),输出端A、B、Y接电平显示发光二极管。 (2)将逻辑开关按表1.2的状态,将结果填入表中。 表1.2 输入输出 1(K1) 2(K2) 4(K35(K4) A B Y 电压(V) L H H H H L L L H H H H L L L H H L L L L L H H 1 1 1 1 1 1 1 1

实验报告9答案

实验报告 课程名称:高级语言程序设计 实验九:函数与数组 班级: 学生姓名: 学号: 专业: 指导教师: 学期:2010-2011学年上学期 云南大学信息学院

一、实验目的 1、掌握数组作为参数的函数编写与调用方法 2、掌握数组作为参数的特殊性 3、掌握字符串作为参数的函数编写与调用方法 二、知识要点 1、地址传递的概念及使用 2、数组元素和数组名作为函数参数的特点与区别 3、字符串作为参数的特点:‘\0’字符的使用 三、实验预习(要求做实验前完成) 1、数组作为函数参数时,其特殊性是 2、定义作为参数的函数时,通常需要提供长度作为参数;而定义 作为参数的函数时,通常不需要提供长度参数 3、写出满足如下要求函数的函数首部: ①函数名为fmax,求一个实型数组的最大元素值: ②函数名为scount,求一个字符串中大写字母的个数: ③函数名为delf,删除一个字符串的第一个字符: 四、实验内容 1、编写一个函数,其功能是将字符串中的大写字母改为小写字母,其他字 符不变。 2、编写一个函数,求出给定的二维数组中每一行最大的元素,并显示出来。 3、在主函数中输入N个人的某门课程的成绩,分别用函数求:①平均分、最 高分和最低分;②分别统计90~100分的人数、80~89分的人数、70~ 79分的人数、60~69分的人数及59分以下的人数。结果在主函数中输出。 五、实验结果(要求写出运行界面及输出的运行结果) 六、实验小结

1.#include #include void change(char a[]) {int i; for(i=0;i='A'&&a[i]<='Z') a[i]+=32; } void main() {char c[30],k; printf("请输入一个包含大写字母的字符串:\n"); gets(c); change(c); puts(c); } 2.#include void max(int b[3][3]) {int i,j,max[3]; for(i=0;i<3;i++) max[i]=b[i][0]; for(i=0;i<3;i++) for(j=0;j<3;j++) if(b[i][j]>max[i]) max[i]=b[i][j]; for(i=0;i<3;i++) printf("第%d行最大值为:%d\n",i+1,max[i]); printf("\n"); } void main() {int i,j,a[3][3]; printf("输入3行3列的数组:"); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); printf("数组元素为:\n"); for(i=0;i<3;i++) {for(j=0;j<3;j++) printf("%d ",a[i][j]); printf("\n"); } max(a); } 3. #include

哈希查找_数据结构实验报告

南昌航空大学实验报告 课程名称:数据结构实验名称:实验九查找 班级:学生姓名:学号: 指导教师评定:签名: 题目:编程实现哈希表的造表和查找算法。 要求:用除留余数法构造哈希函数,用二次探测再散列解决冲突。 一、需求分析 1.用户可以根据自己的需求输入一个顺序表(哈希表) 2.通过用除留余数法构造哈希函数,并用开放地址的二次探测再散列解决冲突。 3.在经过排序后显示该哈希表。 4.程序执行的命令包括: (1)创建哈希表(2)输出哈希表(3)二次探测再散列解决冲突 二、概要设计 ⒈为实现上述算法,需要顺序表的抽象数据类型: ADT Hash { 数据对象D:D是具有相同特征的数据元素的集合。各数据元素均含有类型相同,可唯一标识数据元素的关键字。 数据关系R:数据元素同属一个集合。 基本操作P: Creathash(&h) 操作结果:构造一个具有n个数据元素的哈希查找表h。 destroyhash(&h) 初始条件:哈希查找表h存在。 操作结果:销毁哈希查找表h。 displayhash(h) 初始条件:哈希查找表h存在。 操作结果:显示哈希查找表h。 hash(h,&k) 初始条件:哈希查找表h存在。 操作结果:通过除留余数法得到地址用k返回。 hash2 (i,&k) 初始条件:哈希查找表h存在存在,i是除留余数法得到的地址。 操作结果:返回二次探测再散列解决冲突得到的地址k。 search (h,key) 初始条件:哈希查找表h存在。 操作结果:查找表h中的key,若查找成功,返回其地址,否则返回

-1 insert (&h,key) 初始条件:哈希查找表h存在。 操作结果:若表h中没有key,则在h中插入key。 search1(h, key,&p) 初始条件:哈希查找表h存在。 操作结果:在表h中查找key,若没有,则返回p的插入的地址,否 则返回-1。 }ADT Hash 2. 本程序有三个模块: ⑴主程序模块 main(){ 初始化; { 接受命令; 显示结果; } } ⑵创建hash表的模块:主要建立一个哈希表; ⑶解决冲突模块:利用开放地址的二次探测再散列解决冲突; (4)输出哈希表模块:显示已创建哈希表。 三、详细设计 ⒈元素类型,结点类型 typedef struct { int key; }keytype; typedef struct { keytype elem[100]; int length; /*当前的长度*/ int size; /*哈希表的总长*/ }hashtable; /*全局变量*/ int a=0,b=0; /*哈希函数*/ 2.对抽象数据类型中的部分基本操作的伪码算法如下: /*哈希函数*/ int hash(hashtable *h,int k) { return k%h->size; }

电子技术实验报告

电子技术实验报告 一、元器件认识 (一)、电阻 电阻元件的的标称阻值,一般按规定的系列值制造。电阻元件的误差有六级,对应的标称值系列有E192、E96、E12和E6。电阻在电路中的主要作用为分流、限流、分压、偏置等。 电阻器的标称值和误差等级一般都用数字标印在电阻器的保护漆上。但体积很小的和一些合成的电阻器其标称值和误差等级常以色环的方便之处,能清楚地看清阻值,便于装配和维修。 电阻色码图 颜色黑棕红橙黄绿蓝紫灰白金银本色对应0 1 2 3 4 5 6 7 8 9 / / / 数值 4 567890123对应/ / / 10 10 10 10 10 10 10 10 10 10 n10 方 次 表示/ +1% +2% / / +0.5% +0.25% +0.1% / / +5% +10& +20% 误差-1% -2% -0.5% -0.25% -0.1% -5% -10% -20% 值 色环表示方法有两种形式,一种是四道环表示法,另外一种是五道环表示法。 四道色环:第1,2色环表示阻值的第一、第二位有效数字,第3色环表示两位n数字再乘以10 的方次,第4色环表示阻值的误差。五道色环:第1,2,3色环

n表示阻值的3位数字,第4色环表示3位数字再乘以10的方次,第5色环表示阻值的误差。 ,二,电容值识别 电容在电路中一般用“C”加数字表示(如C13表示编号为13的电容).电容是由两片金属膜紧靠,中间用绝缘材料隔开而组成的元件.电容的特性主要是隔直流通交流. 电容容量的单位为皮法(pf)或(uf),大多数电容的容量值都印其外封装上,主要有两种识别方法,一种是直接识别方法,例如220UF就是220uF,4n7就是 4.7nF;另一种是指数标识,一般以数值乘以倍率表示,倍率值一般用最后 3一位数字表示,单位为pf。比如103,表示容量为10*10pf,即0.01uf;而224表示容量为22*10000pf,即0.22uf;331,表示容量为33*10pf,即330pf。误差用字母表示。“k”表示误差额为10%,“j”表示误差额为5%。而字母“R”可用于表示小数点,例如3R3=3.3 1 (三)用万用表测试半导体二极管 将一个PN结加上正负电极引线,再用外壳封装就构成半导体二极管。由P区引出的电极为正(或称阳极),由N区引出的电极为负极(或称阴极)。 (1) 鉴别二极管的正,负极电极 用万用表表测量二极管的极性电路图,黑表棒接内部电池正极,红表棒接内部电池负极。测量二极管正向极性时按“A”连接,万用表的欧姆档量程选在R*10档。若读数在几百到几百千欧以下,表明黑表棒所接的一段为二极管的正极,二极管正向导通,电阻值较小;若读数很大,则红表棒所接的一端是二极管的正极,此时二极管反向截止。二极管的基本特性是单向导电性。 (四)用万用表测试小功率晶体三极管

Witness单服务台排队系统实验详细步骤

第8章 单服务台排队系统仿真 排队系统是离散事件系统中的典型的问题。制造系统、生产系统、服务系统、修理和维护设备、交通运输和物资材料管理系统都是典型的有形或无形的排队系统。由于排队系统的应用已越来越广泛,排队特征、排队规则、服务机构也变得越来越复杂,用解析方法已无法求解,计算机模拟是求解排队系统和分析排队系统性能的非常有效的方法。 8.1 单服务台排队系统系统描述与仿真目的 1)了解排队系统的设计。 2)熟悉系统元素Part 、Machine 、Buffer 、Variable 、Timeseries 的用法。 3)深入研究系统元素Part 的用法。 4)研究不同的顾客服务时间和顾客的到达特性对仿真结果的影响。 8.2 单服务台排队系统工作流程 8.2.1 顾客到达特性 在该系统中,顾客的到达规模(成批到达还是单个到达)是单个到达,顾客 到达率Ai 服从均值为 的指数分布,即 8.2.2 顾客服务时间 顾客服务时间为Si ,服从指数分布,均值为 ,即 8.3 仿真模型的设计 8.3.1 元素定义(Define ) 本系统的元素定义如表8-1所示。 表8-1 实体元素定义 min 5=A βA s A e A f ββ/)(-= ) 0(≥A min 4=s βS A S e S f ββ/)(-= ) 0(≥S

8.3.2 元素可视化(Display)设置 各个实体元素的显示特征定义设置如图8-1所示。 图8-1 各个实体元素的显示特征 1.Part元素可视化设置 在元素选择窗口选择Guke元素,鼠标右键点击Display,跳出Display对话框(图8-2),设置它的Text(图8-3)、Icon(图8-4)。 图8-2 Display对话框

【免费下载】hash算法实验

实验课程名称:电子商务安全管理实验项目名称1:DES 、RSA 和Hash 算法的实现实验成绩 试验者 王秀梅专业班级1105441 组别同组者无实验的目的 (1) 掌握常用加密处理软件的使用方法。 (2) 理解DES 、RSA 和Hash 算法的原理。 (3) 了解MD5算法的破解方法。实验环境 (1) 装有Windows XP/2003操作系统的PC 机1台。 (2) MixedCS 、RSATool 、DAMN_HashCalc 、MD5Crack 工具软件各1套。实验步骤1、请参考实验指导PPT 。并在最后写实验心得体会。2、将实验电子版提交FTP——1105441电子商务安全管理——第一次实验报告,文件名为“学号(1105441)+姓名+实验一”。 实验过程记录 (1) 对称加密算法DES 的实现 步骤1:双击运行MixedCS.exe 程序,打开的程序主界面步骤2:单击“浏览文件”按钮,选择要进行DES 加密的源文件,选择完成后在“输出文件”文本框中会自动出现默认的加密后的文件名。步骤3:选中“DES 加密”单选按钮,在“DES 密钥”文本框中输入5个字符 (区分大小、管路敷设技术通过管线敷设技术,不仅可以解决吊顶层配置不规范问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

电子技术实验报告(单管放大)

电子技术实验报告二 单管放大电路设计与测试 一、实验目的 1)掌握交流放大电路静态工作点的调试、测量方法,了解其电路中各元件参数值对静态工作点的影响。 2)掌握单管放大器的主要性能指标的调试方法。 3)学会正确使用与本实验课程有关的仪器设备。 二、预习 (1)单管放大器是构成多级放大器和复杂电路的基本单元。其功能是在________的条件下,对放大信号进行___________。要使放大器正常工作,必须设置合适的 _________Q。影响静态工作点的因素很多,但当晶体管确定以后,主要因素取决 于__________电路。单管放大器工作电源是V。 (2)静态工作点设置在交流负载线中点的附近,能使放大器获得最大不失真的_______。 而若工作点选的太高,就会产生失真,若工作点选的过低就会出现失真。(3)该实验电路中,要保证Ui为有效值为10mV,频率为1kHz的交流信号,那么Us (峰—峰值)应该是________V。 (4)为了稳定静态工作点,经常采用具有直流电流负反馈的___________________单管放大电路。请结合实验电路图完成预习,电路中上由Rb1和Rw串联组 成,R2为,Rc为集电极电阻,Re为,起到稳定直流 工作点的作用。C1、C2为交流耦合电容,C3为发射极旁路电容,为提 供通路。 (5)本实验测量输入输出电阻时,采用的是方法测量。测量输入电阻就是在信号源与放大器之间串入一个已知电阻Rs,只要分别测出Vs和Vi,即可得出入电 阻值。 (6)电子技术综合实验室所用的电子技术实验箱型号是,可以完成模拟电子实验、数字电子实验和CPLD实验等内容。 三、实验仪器 本实验所用到的实验仪器见表1,实验仪器的型号、主要功能及主要特点由实验者参考实验指导书以及仪器使用手册进行概括描述。 表1 实验仪器 1、连接电路 参考图2.2.1连接电路并将实际实验电路图画在图1处,将Rw调到电阻最大值。接线后仔细检查,确认无误后接通电源。 2、静态测量 调整使Ue=2.2V,测量计算并填入表2中。

相关文档