友元函数实验报告

友元函数实验报告
友元函数实验报告

课程名称:VC++程序设计

专业名称

班级

学号

姓名

实验(4):

实验日期

【实验名称】

友元

【实验目的】

1)了解为什么要使用友元

2)掌握友元函数、友元成员、友元类的定义和使用方法

【实验内容和结果】

1. 定义复数complex类,使用友元,完成复数的加法、减法、乘法、除法运算,以及对复数的输出。

#include

using namespace std;

//复数加法公式:

//复数减法公式:

//复数乘法公式:

//复数除法公式:

class complex{

double real;

double image;

public:

complex(double r=0,double i=0){

real=r;

image=i;

}

friend void inputcomplex(complex&com);

friend complex addcomplex(complex&c1,complex&c2);

friend complex subcomplex(complex&c1,complex&c2);

friend complex mulcomplex(complex&c1,complex&c2);

friend complex divcomplex(complex&c1,complex&c2);

friend void outputcomplex(complex&com);

};

void inputcomplex(complex &com){

cin>>com.real>>com.image;

}

complex addcomplex(complex&c1,complex&c2){

complex c;

c.real=c1.real+c2.real;

c.image=c1.image+c2.image;

return c;

}

complex subcomplex(complex&c1,complex&c2){

complex c;

c.real=c1.real-c2.real;

c.image=c1.image-c2.image;

return c;

complex mulcomplex(complex&c1,complex&c2){ complex c;

c.real=c1.real*c2.real-c1.image *c2.image;

c.image=c1.real*c2.image+c1.image*c2.real;

return c;

}

complex divcomplex(complex&c1,complex&c2){ complex c;

int divisor=c2.real*c2.real+c2.image*c2.image;

if(!divisor)

{

cout<<"不能被0除"<

exit(-1);

}

c.real=(c1.real*c2.real+c1.image*c2.image)/divisor;

c.image=(c1.image*c2.real-c2.image*c1.real)/divisor;

return c;

}

void outputcomplex(complex &com){

if(com.real)

{cout<<"("<

if(com.image>0)

cout<<"+"<

else if(com.image<0)

cout<

cout<<")";

return;

}

else

cout<<"("<

}

int main(){

complex c1,c2,result;

cout<<"请输入第一个复数的实部和虚部:"<

cout<<"请输入第二个复数的实部和虚部:"<

inputcomplex(c2);

result=addcomplex(c1,c2);

outputcomplex(c1);

cout<<"+";

outputcomplex(c2);

cout<<"=";

outputcomplex(result);

cout<<"\n*******************************"<

result=subcomplex(c1,c2);

outputcomplex(c1);

cout<<"-";

outputcomplex(c2);

cout<<"=";

outputcomplex(result);

cout<<"\n*******************************"<

result=mulcomplex(c1,c2);

outputcomplex(c1);

cout<<"*";

outputcomplex(c2);

cout<<"=";

outputcomplex(result);

cout<<"\n*******************************"<

result=divcomplex(c1,c2);

outputcomplex(c1);

cout<<"/";

outputcomplex(c2);

cout<<"=";

outputcomplex(result);

cout<<"\n*******************************"<

return 0;

}

实验结果为:

请输入第一个复数的实部和虚部:

4.2 7.4

请输入第二个复数的实部和虚部:

9.4 7.8

(4.2+7.4i)+(9.4+7.8i)=(13.6+15.2i)

*******************************

(4.2+7.4i)-(9.4+7.8i)=(-5.2-0.4i)

*******************************

(4.2+7.4i)*(9.4+7.8i)=(-18.24+102.32i)

*******************************

(4.2+7.4i)/(9.4+7.8i)=(0.652349+0.24698i)

*******************************

Press any key to continue

2.定义矩阵类,使用友元实现矩阵的常用运算。

#include

#include

using namespace std;

class Matrix

{

int row,col;

int*p;

public :

Matrix(int i=1,int j=1)

{

row=i;

col=j;

p=new int[row*col];

}

int getRow()

{

return row;

}

int getCol()

{

return col;

}

Matrix(const Matrix&ref)

{

row=ref.row;

col=ref.col;

p=new int[row*col];

for(int i=0;i

{

p[i]=ref.p[i];

}

}

void operator=(const Matrix&ref)

{

row=ref.row;

col=ref.col;

p=new int[row*col];

for(int i=0;i

{

p[i]=ref.p[i];

}

}

~Matrix()

{

delete []p;

}

friend void input(Matrix&);

friend void display(Matrix&);

friend Matrix add(Matrix&,Matrix&);

friend Matrix sub(Matrix&,Matrix&);

friend Matrix mul(Matrix&,Matrix&);

};

void input(Matrix& a)

{

cout<<"请输入该矩阵的"<

for (int i=0;i

cin>>a.p[i];

}

void display(Matrix &a)

{

int conter=0;;

for (int i=0;i

cout<

conter++;

if(conter%a.col==0)

cout<

}

}

Matrix add(Matrix& a,Matrix& b)

{

Matrix result(a.row,a.col);

for (int i=0;i

result.p[i]=a.p[i]+b.p[i];

return result;

}

Matrix sub(Matrix& a,Matrix& b)

{

Matrix result(a.row,a.col);

for (int i=0;i

result.p[i]=a.p[i]-b.p[i];

return result;

}

Matrix mul(Matrix& a,Matrix& b)

{

int i,j,k;

Matrix result(a.row,b.col);

for (i=0;i

result.p[i]=0;

for(i=0;i

for(j=0;j

for(k=0;k

result.p[i*b.col+j]+=a.p[i*a.col+k]*b.p[k*b.col+j];

return result;

}

int main()

{

int row,col;

cout<<"请输入第一个矩阵的行数和列数:"<

cin>>row>>col;

Matrix a(row,col);

input(a);

cout<<"请输入第二个矩阵的行数和列数:"<

cin>>row>>col;

Matrix b(row,col);

input(b);

//显示两个矩阵

cout<<"第一个矩阵为:"<

display(a);

cout<<"第二个矩阵为:"<

display(b);

Matrix result;

if(a.getRow()||a.getCol()!=b.getCol())

{

cout<<"这两个矩阵不能做加法和减法"<

}

else

{

result=add(a,b);

cout<<"两个矩阵的和为:"<

display(result);

result=sub(a,b);

cout<<"两个矩阵的差为:"<

display(result);

}

if(a.getCol()!=b.getRow())

{

cout<<"这两个矩阵不能做乘法"<

}

else

{

result=mul(a,b);

cout<<"两个矩阵的积为:"<

display(result);

}

return 0;

}

实验结果为:

请输入第一个矩阵的行数和列数:

3 2

请输入该矩阵的6个元素值:

5 4 2 8

6 8

请输入第二个矩阵的行数和列数:

2 1

请输入该矩阵的2个元素值:

2 8

第一个矩阵为:

5 4

2 8

6 8

第二个矩阵为:

2

8

这两个矩阵不能做加法和减法

两个矩阵的积为:

42

68

76

Press any key to continue

3.实现堆栈的压入和弹出。定义两个类,一个是结点类,它包含结点值和指向上一结点的指针;另一个类实堆栈类,数据成员为堆栈的头指针,它是结点类的友元。

#include

using namespace std;

class stack;

class node

{

int data;

node*prev;

public:

node(int d,node*n)

{

data=d;

prev=n;

}

friend class stack;

};

class stack

{

node*top;

public:

stack()

{

top=0;

}

void push(int i);

int pop();

};

void stack::push(int i)

{

node*n=new node(i,top);

top=n;

}

int stack::pop()

{

node*t=top;

if(top)

{

top=top->prev;

int c=t->data;

delete t;

return c;

}

return 0;

}

int main()

{

int c;

stack s;

cout<<"请输入10个数字:"<

for(int i=0;i<10;i++)

{

cin>>c;

s.push(c);

}

cout<<"堆栈弹出的序列为:"<

for (i=0;i<10;i++)

cout<

return 0;

}

实验结果为:

请输入10个数字:

0 1 2 3 4 5 6 7 8 9

堆栈弹出的序列为:

9876543210Press any key to continue 【思考与体会】

【老师打分与签名】

信号发生器实验报告

低频电路课程设计 OCL 功率放大器设计 学院名称: 电气信息工程学院 专 业: 测控技术与仪器 班 级: 08测控1班 姓 名: 朱彬彬 学 号: 08314105 指导老师: 王云松 2010年 6 月20 日 JIANGSU TEACHERS UNIVERSITY OF TECHNOLOGY 电气信息工程学院

1设计课题:OCL功率放大器 为了保证功率,效率和失真三个指标满足一定的要求,早期的功率放大器多采用变压耦合。这种电路变压器体积大,比较笨重,耗损多,而且高频和低频部分频响特性不好,在引入负反馈时,很容易自激。随着电子技术的发展,后来被无输出变压器的功率放大电路(OTL)代替。在OTL电路中,虽去掉了变压器,但为了能用但电源供电,输出端接了一个大电容,这个大电容影响了电路的低频特性,于是出现了OCL电路。 OCL功放是在OTL功放的基础上发展起来的,它比OTL功放的频带更宽,保真度更高。OCL功放是一种直接耦合的多级放大器,它运用了许多电子器件,包含了多种基本电路形式。 OCL功率放大器采用两组电源供电,使用了正负电源,在电压不太高的情况下,也能获得较大的输出功率,省去了输出端的耦合电容,使放大器低频特性得到扩展,OCL功放电路也是定压式输出电路,其电路由于性能比较好,所以广泛的应用于高保真扩音设备中。 2 主要技术指标 最大不失真输出功率:Pom≥8w 负载阻抗(扬声器):R L=10Ω 频率响应:f=50Hz~20kHz 非线性失真系数:γ≤功率放大器1% 输入灵敏度:Vi≤300mv 稳定性:电源升高和降低20%时,输出零点漂移≤100mv 3实验用仪器: 直流稳压电源一台 低频信号发生器一台 低频毫伏表一台 示波器一台 万用表一台 晶体管图示仪一台 失真度测量仪一台 4电路原理 OC L功率放大器时一种直接耦合的多级放大器,总体可分为三个部分

哈希表实验报告完整版

实验报告 姓名:学号: 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";

excel基础应用实验报告

Excel电子表格实验报告 姓名(学号):________201302020112____ 年级(专业):_____ 电商1301 ________成绩:________ 实验时间:_______________________ _实验地点:__________________________ _ 实验1-1: 一、实验目的: 掌握使用Excel进行电子表格处理的基本操作,编辑与格式化工作表和单元格。 二、实验内容: 1.在Excel中新建一个空白工作簿,文件名为“学号.xls”,保存在文件夹“实验4”中; 学号姓名性别班级平时成绩期中成绩期末成绩 男一班85 72 80 女一班86 68 72 男二班76 80 84 女二班89 82 80 女一班92 94 91 女二班98 96 92 男二班60 59 60 女一班90 82 88 男一班71 74 70 65 58 54 男 二班 3.在工作表“成绩1”的最右侧插入两列,标题依次为“总评成绩”、“等级”; 4.调整“学号”、“姓名”、“性别”、“班级”、“等级”列的列宽为80个像素,调整“平时成绩”、“期中成绩”、“期末成绩”、“总评成绩”列的列宽为85个像素; 5.设置“平时成绩”只能为[60-100]的整数,“期中成绩”和“期末成绩”只能为[0-100]的整数; 6.设置标题行:行高为20磅,水平居中,垂直居中,字体为新宋体,字形为加粗,字号为12磅,底纹图案为25%灰色,颜色为浅橙色; 7.在工作表“成绩1”顶部插入一行,输入“学生成绩表”,字体为黑体,字号为20磅,颜色为蓝色,跨列居中(使它位于所制作表格的上方中央位置)。 8.为表格添加表格框线,内部为单实线,外部为双实线。 9.在“学号”列从上到下依次填充文本数据“2009001”至“2009010”,要求水平居中。10.在“姓名”列从上到下依次填充文本数据“某一”至“某十”,要求水平居中。11.要求“期末成绩”列能自动识别高于90分的成绩,并将其显示成蓝色粗体。 12.保存修改后的文件。 三、实验步骤:(学生自己填写) 1.桌面——右键——新建——文件夹——改名为“实验1”——Excel空白工作簿——改名为“20091060257”;

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

课程实验报告 课程名称:数据结构 实验项目名称:散列表 专业班级: 姓名: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

模电函数信号发生器实验报告

电子电路模拟综合实验 2009211120 班 09210580(07)号 桂柯易

实验1 函数信号发生器的设计与调测 摘要 使用运放组成的积分电路产生一定频率和周期的三角波、方波(提高要求中通过改变积分电路两段的积分常数从而产生锯齿波电压,同时改变方波的占空比),将三角波信号接入下级差动放大电路(电流镜提供工作电流),利用三极管线性区及饱和区的放大特性产生正弦波电压并输出。 关键词 运放积分电路差动发达电路镜像电流源 实验内容 1、基本要求: a)设计制作一个可输出正弦波、三角波和方波信号的函数信号发生器。 1)输出频率能在1-10KHz范围内连续可调,无明显失真; 2)方波输出电压Uopp=12V,上升、下降沿小于10us,占空比可调范围30%-70%; 3)三角波Uopp=8V; 4)正弦波Uopp>1V。 b)设计该电路的电源电路(不要求实际搭建),用PROTEL软件绘制完整的 电路原理图(SCH) 2、提高要求: a)三种输出波形的峰峰值Uopp均可在1V-10V范围内连续可调。 b)三种输出波形的输出阻抗小于100欧。 c)用PROTEL软件绘制完整的印制电路板图(PCB)。 设计思路、总体结构框图 分段设计,首先产生方波-三角波,再与差动放大电路相连。 分块电路和总体电路的设计(1)方波-三角波产生电路: 正弦波产生电路三角波产生电路 方波产生电路

首先,稳压管采用既定原件2DW232,保证了输出方波电压Uo1的峰峰值为12V,基本要求三角波输出电压峰峰值为8V,考虑到平衡电阻R3的取值问题,且要保证R1/Rf=2/3,计算决定令Rf=12K,R1=8K,R3=5K。又由方波的上升、下降沿要求,第一级运放采用转换速度很快的LM318,Ro为输出限流电阻,不宜太大,最后采用1K欧电阻。二级运放对转换速度要求不是很高,故采用UA741。考虑到电容C1不宜过小,不然误差可能较大,故C1=0.1uF,最后根据公式,Rw抽头位于中点时R2的值约为300欧,进而确定平衡电阻R4的阻值。考虑到电路的安全问题,在滑阻的接地端串接了一个1K的电阻。(注:实际调测时因为滑阻转动不太方便,所以通过不断换滑阻的方式确定适当频率要求下Rw的阻值,我的电路最后使用的是1K欧的滑阻) (2)正弦波产生电路:

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

福建工程学院 课程设计 课程:算法与数据结构 题目:哈希表 专业:网络工程 班级: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++;

C上机实验报告实验四

实验四数组、指针与字符串 1.实验目的 1.学习使用数组 2.学习字符串数据的组织和处理 3.学习标准C++库的使用 4.掌握指针的使用方法 5.练习通过Debug观察指针的内容及其所指的对象的内容 6.联系通过动态内存分配实现动态数组,并体会指针在其中的作用 7.分别使用字符数组和标准C++库练习处理字符串的方法 2.实验要求 1.编写并测试3*3矩阵转置函数,使用数组保存3*3矩阵。 2.使用动态内存分配生成动态数组来重新完成上题,使用指针实现函数的功能。 3.编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。 4.使用string类定义字符串对象,重新实现上一小题。 5.定义一个Employee类,其中包括姓名、街道地址、城市和邮编等属性,以及change_name()和display()等函数。Display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性。实现并测试这个类。 6.定义包含5个元素的对象数组,每个元素都是Employee类型的对象。 7. (选做)修改实验4中的选做实验中的people(人员)类。具有的属性如下:姓名char name[11]、编号char number[7]、性别char sex[3]、生日birthday、身份证号char id[16]。其中“出生日期”定义为一个“日期”类内嵌对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、聚集。在测试程序中定义people类的对象数组,录入数据并显示。 3.实验内容及实验步骤 1.编写矩阵转置函数,输入参数为3*3整形数组,使用循环语句实现矩阵元素的行列对调,注意在循环语句中究竟需要对哪些元素进行操作,编写main()函数实现输入、输出。程序名:lab6_1.cpp。 2.改写矩阵转置函数,参数为整型指针,使用指针对数组元素进行操作,在main()函数中使用new操作符分配内存生成动态数组。通过Debug观察指针的内容及其所指的对象中的内容。程序名:lab6_2.cpp。 3.编程实现两字符串的连接。定义字符数组保存字符串,在程序中提示用户输入两个字符串,实现两个字符串的连接,最后用cout语句显示输出。程序名:lab6_3.cpp。用cin实现输入,注意,字符串的结束标志是ASCII码0,使用循环语句进行字符串间的字符拷贝。 4.使用string类定义字符串对象,编程实现两字符串的连接。在string类中已重载了运算符“+=”实现字符串的连接,可以使用这个功能。程序名:lab6_4.cpp。 5.在employee.h文件中定义Employee类。Employee类具有姓名、街道地址、城市和邮编等私有数据成员,在成员函数中,构造函数用来初始化所有数据成员;display()中使用cout显示

简易函数发生器的设计与制作电子实验报告

目录 1设计任务 (1)实验名称 (2)实验目的 (3)实验要求 (4)主要技术指标 2 设计分析 (1)实验原理 (2)方案论证比较 (3)系统功能及设计框图 3电路设计过程 (1)电路各部分设计 a分压电路的设计 b跟随器的设 c反相器的设计 d积分电路的分析与设计 e 差分放大电路的设计 f反馈电路的设计

(2)电路规格计算 4设计总图及元件列表调试(1)总图 (2)元件列表 (3)电路修正 5实验结论及经验总结 (1)注意事项 (2)实验感想

1 设计任务 (1) 实验名称:简易函数发生器的设计与制作 (2)实验目的: a.了解电路系统的设计过程,增加动手能力,理论联系实践 b.进一步学习模电放大器,积分器电路的特性和设计方法 c.巩固基本的电学仪器的使用方法 d.掌握波形的转换电路及通过反馈进行电路控制的方法 (3)实验要求: a 用基本集成放大器,三极管,电阻电容等制作一个简易函数发生器。 b 用EWB软件进行仿真设计求得各电压电阻参数。 (4)主要技术指标 a 函数发生器输入电压为0-2V,输入频率为0-10KHz. b. 函数发生器可以输出方波,三角波,正弦波等波形 c. 输出三角波的幅度为-4V--+4V,输出正弦波幅度为-2V——+2V,方波幅度为0-10V 。

2 设计分析 (1)实验原理: 本设计实验通过模电教学中常用的集成运放,三极管,电容等器件让学生自主设计简易函数发生器。 函数发生器由电压控制,可实现方波,三角波,正,需要在电路中加入反馈,使得电压反向器产生交替的电压形成方波。整个电路基本框图弦波按照一定频率输出。三角波的形成可以通过方波积分形成,而三角波经过单入单出差分放大器后产生饱和失真,三角波顶端变平滑,可近似看做正弦波。要控制方波的输出,必须在积分电路后加入负反馈,使得反向器控制电路交替正负从而形成方波信号。 (2)方案论证比较: 方案1:

哈希表实验报告

数据结构实验报告四——哈希表查找名字(字符串) 实验题目:哈希表查找名字(字符串) 实验目标: 输入一组名字(至少50个),将其保存并利用哈希表查找。输出哈希查找冲突次数,哈希表负载因子、查找命中率。 数据结构: 哈希表与数组(二维)。二维数组用于静态顺序存储名字(字符串),哈希表采用开放定址法,用于存储名字(字符串)对应得关键字并实现对名字(字符串)得查找。 需要得操作有: 1、关键字求取(主函数中两次出现,未单独编为函数) 关键字key=abs(字符串首位ASCII码值-第二位ASCII码值+第([]+1)位ASCII码值-最后一位ASCII码值-倒数第二位ASCII码值)*字符串长度(abs为求整数绝对值得函数)。 2、处理关键字得哈希函数(Hash) 利用平方取中法求关键值key在哈希表中得位置。公式add=(key*key)%1000/LENGTH(a dd为key在哈希表中得地址)。 int Hash(intkey) { ?return((key*key)/1000%LENGTH); } 3、处理哈希表中冲突得函数(Collision) 利用线性探测再散列处理冲突,利用全局变量count统计冲突次数。 int Collision(intkey,int Hashtable[]) { inti; for(i=1;i<=LENGTH;i++) { ??if(Hashtable[(Hash(key)+i)%LENGTH]==-1) ?return((Hash(key)+i)%LENGTH); ??count++; } } 4、哈希表初始化(InitHash) void InitHash(int Hashtable[]) { inti; for(i=0;i<LENGTH;i++) ??Hashtable[i]=-1; } 5、向哈希表中插入关键字(InsertHash) void InsertHash(int key,int Hashtable[]) { int add;

电路实验二实验报告仪器仪表的使用

电路实验二实验报告 实验题目:仪器仪表的使用 实验内容: 1.熟悉示波器和函数信号发生器的使用; 2.测量示波器自带的校准信号; 3.用示波器测量函数信号发生器提供的正弦波、三角波和方波; 4.在面包板上搭接一个积分电路,用示波器观测其波形。 实验环境: 示波器DS1052E,函数发生器EE1641D,面包板SYB-130。 实验原理: 1.示波器是一种用途十分广泛的电子测量仪器。把肉眼看不见的电信号变换成看得见的 图象,便于研究各种电现象的变化过程。利用狭窄的、由高速电子组成的电子束,打在涂有荧光物质的屏面上,产生细小的光点。在被测信号的作用下,电子束就好像一支笔的笔尖,可以在屏面上描绘出被测信号的瞬时值的变化曲线。利用示波器能观察各种不同信号幅度随时间变化的波形曲线,还可以用它测试各种不同的电量,如电压、电流、频率、相位差、调幅度等等。 2.函数发生器是一种多波形的信号源。它可以产生正弦波、方波、三角波、锯齿波,甚

至任意波形。有的函数发生器还具有调制的功能,可以进行调幅、调频、调相、脉宽调制和VCO控制。 3.面包板是专为电子电路的无焊接实验设计制造的。由于各种电子元器件可根据需要随 意插入或拔出,免去了焊接,节省了电路的组装时间,而且元件可以重复使用,所以非常适合电子电路的组装、调试和训练。 实验记录及结果分析: 1.示波器自带的校准信号: 2.函数发生器提供正弦波: 3.函数发生器提供的方波: 最大值:2.40V 最小值:-2.64V 峰峰值:5.04V 频率:2.016kHz 周期:496.0μs 占空比:48.0% 4.函数发生器提供的三角波: 最大值:2.40V 最小值:-2.64V 峰峰值:5.04V 频率:2.016kHz 周期:496.0μs 实验总结: 示波器能够产生波形,把肉眼看不见的电信号转为我们很容易看见的图形,而函数发生器则会产生不同类型的电信号,这样利用示波器和函数发生器就可以对函数发生器所发

信号发生器实验报告(波形发生器实验报告)

信号发生器 一、实验目的 1、掌握集成运算放大器的使用方法,加深对集成运算放大器工作原理的理解。 2、掌握用运算放大器构成波形发生器的设计方法。 3、掌握波形发生器电路调试和制作方法 。 二、设计任务 设计并制作一个波形发生电路,可以同时输出正弦、方波、三角波三路波形信号。 三、具体要求 (1)可以同时输出正弦、方波、三角波三路波形信号,波形人眼观察无失真。 (2)利用一个按钮,可以切换输出波形信号。。 (3)频率为1-2KHz 连续可调,波形幅度不作要求。 (4)可以自行设计并采用除集成运放外的其他设计方案 (5)正弦波发生器要求频率连续可调,方波输出要有限幅环节,积分电路要保证电路不出现积分饱和失真。 四、设计思路 基本功能:首先采用RC 桥式正弦波振荡器产生正弦波,然后通过整形电路(比较器)将正弦波变换成方波,通过幅值控制和功率放大电路后由积分电路将方波变成三角波,最后通过切换开关可以同时输出三种信号。 五、具体电路设计方案 Ⅰ、RC 桥式正弦波振荡器 图1 图2 电路的振荡频率为:RC f π21 0= 将电阻12k ,62k 及电容100n ,22n ,4.4n 分别代入得频率调节范围为:24.7Hz~127.6Hz ,116.7Hz~603.2Hz ,583.7Hz~3015Hz 。因为低档的最高频率高于高档的最低频率,所以符合实验中频率连续可调的要求。 如左图1所示,正弦波振荡器采用RC 桥式振荡器产生频率可调的正弦信号。J 1a 、J 1b 、J 2a 、J 2b 为频率粗调,通过J 1 J 2 切换三组电容,改变频率倍率。R P1采用双联线性电位器50k ,便于频率细调,可获得所需要的输出频率。R P2 采用200k 的电位器,调整R P2可改变电路A f 大小,使得电路满足自激振荡条件,另外也可改变正弦波失真度,同时使正弦波趋于稳定。下图2为起振波形。

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

福建工程学院课程设计 课程:算法与数据结构 题目:哈希表 专业:网络工程 班级:xxxxxx班 座号:xxxxxxxxxxxx 姓名:xxxxxxx 2011年12 月31 日

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

MATLAB程序设计实验报告

MATLAB实验报告 一、实验名称 实验4图形绘制(1) 二、实验目的: 熟悉和掌握MA TLAB基本的二维图形绘制函数。 三、实验内容: 1.绘制简单的二维图形 2.一个坐标系绘制多幅图形 3.图形标识和坐标控制 4.交互式图形指令 四、回答问题: (本次实验未预留问题) 五、遇到的问题及解决: 遇到了求y=lnx时,输入“y=ln(x)”不被软件识别的问题,查看常用数学函数表后改为y=log(x)成功解决。 在求10x时不知道用什么函数,函数表里也查不到,在老师的点拨下用“y=10.^x”解决。 在绘图时发现默认线型不够明显,查表后使用尖三角、叉号代替默认线型。 六、体会: 本次实验我学会了利用MATLAB绘制图形的基本方法,以及相应的备注方法。 难点是了解各种函数的具体作用并熟练掌握。 体会是:多学多练,孰能生巧,日积月累,必有提高。

思考题: 1.在同一坐标系绘制t3,-t2,t2sint在[0,2π]内的曲线图。 x=0:pi/50:2*pi; y1=t.*t.*t; y2=-t.*t; y3=t.*t.*sin(t); plot(t,y1,'^k',t,y2,'.k',t,y3,'xk'); legend('\ity=t^3','\ity=-t^2','\itt^2*sint'); 2.在一幅图中画出4幅子图,分别绘制sin2x,tanx,lnx,10x的图形,并加上适当的图形注释。注意:把函数变成MATLAB对应的形式。 x=0:pi/50:2*pi; y1=sin(2*t); y2=tan(x); y3=log(x); y4=10.^x; subplot(2,2,1) plot(x,y1); legend('y=sin2x'); subplot(2,2,2) plot(x,y2) legend('y=tanx'); subplot(2,2,3) plot(x,y3)

信号发生器实验报告

电子线路课程设计报告设计题目:简易数字合成信号发生器 专业: 指导教师: 小组成员:

数字合成信号发生器设计、调试报告 一:设计目标陈述 设计一个简易数字信号发生器,使其能够产生正弦信号、方波信号、三角波信号、锯齿波信号,要求有滤波有放大,可以按键选择波形的模式及周期及频率,波形可以在示波器上 显示,此外可以加入数码管显示。 二、完成情况简述 成功完成了电路的基本焊接,程序完整,能够实现要求功能。能够通过程序控制实现正弦波的输出,但是有一定噪声;由于时间问题,我们没有设计数码管,也不能通过按键调节频率。 三、系统总体描述及系统框图 总体描述:以51单片机开发板为基础,将输出的数字信号接入D\A转换器进行D\A转换,然后接入到滤波器进行滤波,最后通过运算放大器得到最后的波形输出。 四:各模块说明 1、单片机电路80C51 程序下载于开发板上的单片机内进行程序的执行,为D\A转换提供了八位数字信号,同时为滤波器提供高频方波。通过开发板上的232串口,可以进行软件控制信号波形及频率切换。通过开发板连接液晶显示屏,显示波形和频率。 2、D/A电路TLC7528 将波形样值的编码转换成模拟值,完成单极性的波形输出。TLC7528是双路8位数字模拟转换器,本设计采用的是电压输出模式,示波器上显示波形。直接将单片机的P0口输出传给TLC7528并用A路直接输出结果,没有寄存。 3、滤波电路MAX7400 通过接收到的单片机发送来的高频方波信号(其频率为所要实现波频率的一百倍)D转换器输出的波形,对转换器输出波形进行滤波并得到平滑的输出信号。 4、放大电路TL072

TL072用以对滤波器输出的波进行十倍放大,采用双电源,并将放大结果送到示波器进行波形显示。 五:调试流程 1、利用proteus做各个模块和程序的单独仿真,修改电路和程序。 2、用完整的程序对完整电路进行仿真,调整程序结构等。 3、焊接电路,利用硬件仿真器进行仿真,并用示波器进行波形显示,调整电路的一些细节错误。 六:遇到的问题及解决方法 遇到的软件方面的问题: 最开始,无法形成波形,然后用示波器查看滤波器的滤波,发现频率过低,于是检查程序发现,滤波器的频率设置方面的参数过大,延时程序的参数设置过大,频率输出过低,几次调整好参数后,在进行试验,波形终于产生了。 七:原理图和实物照片 波形照片:

数据结构实验四哈希表及其查找

云南大学数学与统计学实验教学中心实验报告 课程名称: 数据结构与算法学期: 2011-2012学年第二学期 成绩: 指导教师:xxx学生姓名:xxx学生学号:xxxxx 实验名称:哈希表及其查找实验要求:必做实验学时:4(+2)学时 实验编号:4(及5)实验日期:第6-8周完成日期:2012.5.10 学院:数学与统计学院专业:信息与计算科学年级:2010级 一、实验目的 通过实验掌握散列存储的基本概念,进行哈希问题的处理,同时附带进行字符串的处理的练习。 二、实验内容 为某单位的人名(n=30人)设计一个哈希表,使得平均查找长度<2,要求完成相应的哈希建表和查表。。 三、实验环境 Windows XP 程序设计语言C 四、实验过程 1.实验要求: 1、设人名长度<10个字符,用二维字符数组存储哈希表:char hash[ ][10]; 2、要求哈希函数用除留余数法,并用人名的10个字符代码和作为分子; 用(补偿性)线性探测再散列处理冲突。 3、依题意有:平均查找长度=(1+1/(1-α))/2< 2,∴取α=0.6, 由此哈希表长m=n/α=30/0.6=50; 所以有char hashlist [ 50][10]; 令:除留余数法中的P取47; (补偿性)线性探测再散列的地址:j=(j+Q)% m中的Q取17。 4、对程序结构的要求: ①要求为哈希建表和哈希查表分别编写和设计相应的函数: createhash( ... ... ); hashsearch(... ...); ②再设计一个哈希函数表的输出函数printhash( ),对构造的哈希表进行输出,注 意输出格式要在屏幕好看,先输出序号(1~30),再输出该序号 的人名或null,每行输出10项,共输出5行。 ③还应有一个初始化char hashlist [ 50][10]的函数Inithashlist( ), 初始时将50个人名全赋值为null. 5、在主函数中: 调用Inithashlist( )初始化哈希表;

信号发生器实验报告(终)

南昌大学实验报告 学生姓名:王晟尧学号:6102215054专业班级:通信152班 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 信号发生器设计 一、设计任务 设计一信号发生器,能产生方波、三角波和正弦波并进行仿真。 二、设计要求 基本性能指标:(1)频率范围100Hz~1kHz;(2)输出电压:方波U p-p≤24V,三角波U p-p=6V,正弦波U p-p>1V。 扩展性能指标:频率范围分段设置10Hz~100Hz, 100Hz~1kHz,1kHz~10kHz;波形特性方波t r<30u s(1kHz,最大输出时),三角波r△<2%,正弦波r~<5%。三、设计方案 信号发生器设计方案有多种,图1是先产生方波、三角波,再将三角波转换为正弦波的组成框图。 图1 信号发生器组成框图 主要原理是:由迟滞比较器和积分器构成方波——三角波产生电路,三角波在经过差分放大器变换为正弦波。方波——三角波产生基本电路和差分放大器电路分别如图2和图4所示。 图2所示,是由滞回比较器和积分器首尾相接形成的正反馈闭环系统,则比较器A1输出的方波经积分器A2积分可得到三角波,三角波又触发比较器自动翻转形成方波,这样即可构成三角波、方波发生器。其工作原理如图3所示。

图2 方波和三角波产生电路 图3 比较器传输特性和波形 利用差分放大器的特点和传输特性,可以将频率较低的三角波变换为正弦波。其基本工作原理如图5所示。为了使输出波形更接近正弦波,设计时需注意:差分放大器的传输特性曲线越对称、线性区越窄越好;三角波的幅值V 应接近晶 m 体管的截止电压值。 图4 三角波→正弦波变换电路

数据结构哈希表的实验报告

课程实习报告 一、需求分析: 1.本程序来自于图书馆靠书名来检索想要查找的书问题。 2.本程序要求: (1)根据输入建立图书名称表,采用创建散列表实现。 (2)建散列表后,如果想要查找的数据在散列表中输出yes否则输出no。 二、哈希表简介 结构中存在关键字和K相等的记录,则必定存储在f(K)的位置上。由此,不需比较便可直接取得所查记录。这个对应关系f称为散列函数(Hash function),按这个思想建立的表为散列表。

* 对不同的关键字可能得到同一散列地址,即key1≠key2,而f(key1)=f(key2),这种现象称冲突。具有相同函数值的关键字对该散列函数来说称做同义词。 * 综上所述,根据散列函数H(key)和处理冲突的方法将一组关键字映象到一个有限的连续的地址集(区间)上,并以关键字在地址集中的“象”,作为这条记录在表中的存储位置,这种表便称为散列表,这一映象过程称为散列造表或散列,所得的存储位置称散列地址。这个现象也叫散列桶,在散列桶中,只能通过顺序的方式来查找,一般只需要查找三次就可以找到。科学家计算过,当负载因子(load factor)不超过75%,查找效率最高。* 若对于关键字集合中的任一个关键字,经散列函数映象到地址集合中任何一个地址的概率是相等的,则称此类散列函数为均匀散列函数(Uniform Hash function),这就是使关键字经过散列函数得到一个“随机的地址”,从而减少冲突。 程序设计流程 程序思想 (一)哈希函数unsigned int hash_BKDE(char *str)生成映射 地址,成为散列表的编号。 (二)哈希表HashTable::HashTable()通过数组储存元素 (三)插入函数void HashTable::insert(char*c)插入字符串, 先计算要插入字符串生成的映射地址,然后在相应的地址插入,如果没有空位查找空位插入。

图的应用的实验报告

实验六图的应用及其实现 一、实验目的 1.进一步功固图常用的存储结构。 2.熟练掌握在图的邻接表实现图的基本操作。 3.理解掌握AOV网、AOE网在邻接表上的实现以及解决简单的应用问题。 二、实验内容 [题目一]:从键盘上输入AOV网的顶点和有向边的信息,建立其邻接表存储结构,然后对该图拓扑排序,并输出拓扑序列. 试设计程序实现上述AOV网的类型定义和基本操作,完成上述功能。 测试数据:教材图7.28 [题目二]:从键盘上输入AOE网的顶点和有向边的信息,建立其邻接表存储结构,输出其关键路径和关键路径长度。试设计程序实现上述AOE网类型定义和基本操作,完成上述功能。 测试数据:教材图7.29 三、实验步骤 ㈠、数据结构与核心算法的设计描述 基本数据结构: #define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 typedef int Status; /* Status 是函数的类型,其值是函数结果状态代码,如OK 等*/ #define INFINITY INT_MAX //定义无穷大∞ #define MAX_VERTEX_NUM 20 typedef int V ertexType; typedef int InfoType; typedef struct ArcNode // 表结点定义 { InfoType info; int adjvex; //邻接点域,存放与V i邻接的点在表头数组中的位置ArcNode *nextarc; //链域,指示依附于vi的下一条边或弧的结点, }ArcNode; typedef struct VNode //表头结点 { int data; //存放顶点信息 struct ArcNode *firstarc; //指示第一个邻接点 }VNode,AdjList[MAX_VERTEX_NUM]; typedef struct { //图的结构定义

信号发生器实验报告(DOC)

信号发生器 F组 组长:*** 组员:***、*** 2013年8月12日星期一

1系统方案 (4) 1.1系统方案论证与选择 (4) 1.2方案描述 (4) 2理论分析与计算 (5) 3电路与程序设计 (6) 3.1电路的设计 (6) 3.1.1 ICL8038模块电路 (6) 3.1.2 放大电路 (6) 3.2程序的设计 (7) 4测试方案与测试结果 (9) 4.1测试仪器与结果 (9) 4.2调试出现的问题及解决方案 (9) 5 小结 (10)

本系统设计的是信号发生器,是以 ICL8038和 STC89C51为核心设计的数控及扫频函数信号发生器。ICL8038作为函数信号源结合外围电路产生占空比和频率可调的正弦波、方波、三角波;该函数信号发生器的频率可调范围1~100kHz,波形稳定,无明显失真。单片机控制LCD12864液晶显示频率、频段和波形名称。 关键字:信号发生器ICL8038、 STC89C51、波形、LCD12864

信号发生器实验报告 1系统方案 1.1系统方案论证与选择 方案一:由单片机内部产生波形,经DAC0832输出,然后再经过uA741放大信号后,最后经过CD4046和CD4518组成的锁相环放大频率输出波形,可是输出的波形频率太低,达不到设计要求。 方案二:采用单片机对信号发生器MAX038芯片进行程序控制的函数发生器,该发生器有正弦波、三角波和方波信号三种波形,输出信号频率在0.1Hz~100MHz 范围内。MAX038为核心构成硬件电路能自动地反馈控制输出频率,通过按键选择波形,调节频率,可是MAX038芯片价格太高,过于昂贵。 方案三:利用芯片ICL8038产生正弦波、方波和三角波三种波形,根据电阻和电容的不同可以调节波形的频率和占空比,产生的波形频率足够大,能达到设计要求,而且ICL8038价格比较便宜,设计起来成本较低。 综上所述,所以选择第三个方案来设计信号发生器。 1.2方案描述 本次设计方案是由ICL8038 芯片和外围电路产生三种波形,由公式: ,改变电阻和电容的大小可以改变波形的频率,有开关控制频段和波形并给单片机一个信号,由单片机识别并在LCD液晶屏上显示,电路的系统法案框图为下图1所示: 图1 总系统框图

C语言程序设计II实验报告

C语言程序设计II实验报告题目:实验五函数应用 院系名称:计算机学院 专业名称:计算机科学与技术 班级: 学号: 学生姓名: 指导教师: 实验日期:2017年4月1日 报告提交截止日期:2017年4月11日

一、实验目的 1、掌握C语言函数的定义方法、函数的声明及函数的调用方法及 调用过程; 2、掌握主调函数和被调函数之间的参数传递方式; 二、实验内容与要求: 1、求两个整数的最大公约数和最小公倍数。用一个函数求最大公约数,用 另一个函数根据求出的最大公约数求最小公倍数。(提示:设两个整数是 a,b,最大公约数是p,最小公倍数是q,那么ab=pq) 2、用牛顿迭代法求方程f(x)=ax3+bx2+cx+d=0的根。系数a、b、c、d由主 函数输入。求根过程写成函数。(提示:牛顿迭代法是先给定方程f(x)=0 的一个较好的初始近似根x0,然后重复使用迭代公式: 求x的近似解,直至相邻两次的近似解相差很小为止,如差值的绝对值 小于1e-07。x0可以从键盘输入或直接设定。) 3、定义一个函数,功能是计算n个学生的成绩中高于平均成绩的人数,并 作为函数返回值。用主函数来调用它。统计30个学生成绩中高于平均成 绩的有多少人。 4、 ∑= + + + = = n i n p p p i p n s 1 ) ( )2( )1( )( ) (Λ Λ,! )(i i p= 5、编写和调用函数,给定圆筒的内径、外径和高,计算该圆筒的体积;给

定圆锥的高、底面半径,计算该圆锥的体积和表面积。 6、编写和调用函数,求出10000以内的所有素数、绝对素数、水仙花数、 完全数(或称完数)、互满数。 提示:一个素数经过任意次调换位,仍然为素数,则称其为绝对素数, 例如13和31就是一个绝对素数。水仙花数是指一个三位整数,其各位 数字立方之和等于该数。例如,153就是一个水仙花数:153=1*1*1+ 5*5*5+3*3*3。完全数是指一个数正好是它的所有约数(本身除外)之和。 例如,6就是一个完全数,因为6的因子有1、2、3,并且6=1+2+3。 如果有两个数,每一个数的所有约数(除它本身以外)之和正好等于对 方,则称这两个数为互满数。 三、实验结果

实验1 示波器函数信号发生器的原理及使用(实验报告之实验数据表)

实验1 示波器、函数信号发生器的原理及使用 【实验目的】 1. 了解示波器、函数信号发生器的工作原理。 2. 学习调节函数信号发生器产生波形及正确设置参数的方法。 3. 学习用示波器观察测量信号波形的电压参数和时间参数。 4. 通过李萨如图形学习用示波器观察两个信号之间的关系。 【实验仪器】 1. 示波器DS5042型,1台。 2. 函数信号发生器DG1022型,1台。 3. 电缆线(BNC 型插头),2条。 【实验内容与步骤】 1. 利用示波器观测信号的电压和频率 (1)参照“实验1 示波器函数信号发生器的原理及使用(实验指导书)”相关内容,产生如图1-1所示的正余弦波形,显示在示波屏上。 图1-1 函数信号发生器生成的正、余弦信号的波形 学生姓名/学号 指导教师 上课时间 第 周 节

(2)用示波器对图1-1中所示的正余弦波形进行测量并填写下表 表1-1 正余弦信号的电压和时间参数的测量 电压参数(V)时间参数 峰峰值最大值最小值频率(Hz)周期(ms)正弦信号 3sin(200πt) 余弦信号 3cos(200πt) 2. 用示波器观测函数信号发生器产生的正余弦信号的李萨如图形 (1)参照“实验1 示波器函数信号发生器的原理及使用(实验指导书)”相关内容,产生如图1-2所示的正余弦波形的李萨如图形,调节并正确显示在示波屏上。 图1-2 正弦信号3sin(200πt)和余弦信号3cos(200πt)的李萨如图形 3. 观测相同幅值、相同频率、不同相位差条件下的两正弦信号的李萨如图形 (1)在函数信号发生器CH1通道产生的正弦信号3sin(200πt)保持不变的情况下,调节函数信号发生器CH2通道产生正弦信号3sin(200πt+45o),观测并记录两正弦信号的李萨如图形于图1-3中。 (2)在函数信号发生器CH1通道产生的正弦信号3sin(200πt)保持不变的情况下,调节函数信号发生器CH2通道产生正弦信号3sin(200πt+135o),观测并记录两正弦信号的李萨如图形于图1-3中。

相关文档
最新文档