信息工程实验报告1.docx
- 文档编号:23184413
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:25
- 大小:17.42KB
信息工程实验报告1.docx
《信息工程实验报告1.docx》由会员分享,可在线阅读,更多相关《信息工程实验报告1.docx(25页珍藏版)》请在冰豆网上搜索。
信息工程实验报告1
版权声明
本文内的全部内容均由本人编写,可以用来参考学习,但不可用来进行商业活动。
一切代码解释权均归作者扎楠所有。
所有题目以实验指导书为准。
之所以制作这个word只是为了给将来和即将面对席大林老师以及他的课程的同学一些程序上的参考,避免走弯路,花更多的时间在缤纷多彩的大学生活中,不要纠结于这些琐事。
信息工程实验例程
指导教师:
席大林
实验1
doublestep(doublet)
{return(t>=0)?
1:
0;}
doublexiebian(doublet)
{return(t>=0)?
t:
0;}
doublesquarewave(doublet,doubleT[2])
{doublea;
if(T[0]<=0||T[1]<=0)
{printf("squareWave()inputerror\n");exit
(1);}
a=fmod(t,T[0]);
if(a>0)return(a<=T[1])?
1.0:
0.0;
elsereturn(a>(-T[0]+T[1]))?
0.0:
1.0;}
doubletrianglewave(doublet,doubleT[1])
{doublea;
if(T[0]<=0)
{printf("triangleWave()inputerror\n");exit
(1);}
a=fmod(t,T[0]);
if(a>0)return(a/T[0]);
elsereturn(1+a/T[0]);}
doublehfunc(doublea,double*b)
{doublefz,fm;
fz=a*a+b[0]*b[0];
fm=((a-1)*(a-1)+b[0]*b[0])*((a-3)*(a-3)+b[0]*b[0]);
if(fm==0.0)returnMAXDOUBLE;
if(fm<1.0)returnsqrt(fz/fm);
elsereturnsqrt(fz*fm)/fm;}
doublesinc(doublea,double*b)
{doublefz,fm;
fz=sin(0.5*a)*cos(a*b[0]);
fm=0.5*a;
if(fm==0.0)returnMAXDOUBLE;
elsereturn(fz/fm);}
实验2
/*#include
#include
#include"c:
\xxgc\zn.c"
main()
{initgd("");
{setbkcolor(WHITE);
setvp2(0,0,500,400,"2dimensionfigure","typeanykeytonext",BLUE);
coord2(-10.0,2.0,10.0,-2.0);
frame2("x","y",LIGHTRED);
xy2(RED);
plotxy2(BLUE,xiebian);getch();}
clearviewport();xy2(RED);
{doubleT[2]={4,3};plotxy2(BLUE,trianglewave,T);getch();}
setvp3(0,0,400,"3dimensionfigure","typeanykeyexit",BLUE);
coord3(-1,-1,0,8,7,5);
frame3("t","w","f(a,)",RED);
xyz3(GREEN);
plotxyz3(BLUE,sinc);getch();
closegraph();
}
实验3
1)
#include
doublea[20],b[20],c[20],d[20],T=3.1415925;inti,N=4;
doublelsinl(doublet)
{
if(sin(t)>=0)returnsin(t);
elsereturn-1*sin(t);
}
doubleWC1(doublet,double*T,doublea[],doubleb[],int*N)
{returnlsinl(t)-FouSer(t,T,a,b,N);}
doubleWC2(doublet,double*T,doublec[],int*N)
{returnlsinl(t)-WalSer(t,T,c,N);}
main()
{
for(i=0;i {a[i]=fcosCoef(i,T,lsinl); b[i]=fsinCoef(i,T,lsinl); c[i]=WalCoef(i,T,lsinl); } initgd(""); window2("hecheng", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,FouSer,&T,a,b,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,lsinl);getch(); clearviewport();xy2(BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WalSer,&T,c,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,lsinl);getch(); clearviewport(); window2("WC1", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC1,&T,a,b,&N);getch(); clearviewport(); window2("WC2", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC2,&T,c,&N);getch(); closegraph(); } 2) #include doublea[20],b[20],c[20],d[20],T=4;inti,N=20; doubletrianglewave(doublet) {doublea; a=fmod(t,1); if(a>0)return(a/1); elsereturn(1+a/1);} doubleWC1(doublet,double*T,doublea[],doubleb[],int*N) {returntrianglewave(t)-FouSer(t,T,a,b,N);} doubleWC2(doublet,double*T,doublec[],int*N) {returntrianglewave(t)-WalSer(t,T,c,N);} main() { for(i=0;i {a[i]=fcosCoef(i,T,trianglewave); b[i]=fsinCoef(i,T,trianglewave); c[i]=WalCoef(i,T,trianglewave);} initgd(""); window2("hecheng", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,FouSer,&T,a,b,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,trianglewave);getch(); clearviewport();xy2(BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WalSer,&T,c,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,trianglewave);getch(); clearviewport(); window2("WC1", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC1,&T,a,b,&N);getch(); clearviewport(); window2("WC2", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC2,&T,c,&N);getch(); closegraph(); } 3) #include doublea[20],b[20],c[20],d[20],Z=3;inti,N=5; doublesquarewave(doublet) {doublea; a=fmod(t,3); if(a>0)return(a<=1)? 1.0: 0.0; elsereturn(a>(-3+1))? 0.0: 1.0;} doubleWC1(doublet,double*Z,doublea[],doubleb[],int*N) {returnsquarewave(t)-FouSer(t,Z,a,b,N);} doubleWC2(doublet,double*Z,doublec[],int*N) {returnsquarewave(t)-WalSer(t,Z,c,N);} main() { for(i=0;i {a[i]=fcosCoef(i,Z,squarewave); b[i]=fsinCoef(i,Z,squarewave); c[i]=WalCoef(i,Z,squarewave);} initgd(""); window2("hecheng", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,FouSer,&Z,a,b,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,squarewave);getch(); clearviewport();xy2(BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WalSer,&Z,c,&N); setlinestyle(SOLID_LINE,0,NORM_WIDTH); plotxy2(LIGHTRED,squarewave);getch(); clearviewport(); window2("WC1", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC1,&Z,a,b,&N);getch(); clearviewport(); window2("WC2", -5,3,5,-3, "x","y",BLUE,BLUE); setlinestyle(SOLID_LINE,0,THICK_WIDTH); plotxy2(BLUE,WC2,&Z,c,&N);getch(); closegraph(); } 实验4 1) #include doubletrianglewave(doublet) {doubleu; if(t<0)t=-1*t; u=fmod(t,4); if(u<1)returnu; elsereturn4/3-u/3;} main() {doublea[20],b[20],c[20],A,B,x,T=4; inti,N=20; for(i=0;i<20;i++) {a[i]=fcosCoef(i,T,trianglewave); b[i]=fsinCoef(i,T,trianglewave); c[i]=WalCoef(i,T,trianglewave);} A=a[3];B=b[3]; initgd(""); window2("distortionanalyse(=-ESC)", -5,3,5,-3, "t","f",BLUE,WHITE); /*fudushizhen: (x+1)Acoswt+(x+1)Bsinwt =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,4,20);) {a[3]=A*(x+1);b[3]=B*(x+1); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*xiangweishizhen: Acos(wt+x)+Bsin(wt+x) =Acoswtcosx-Asinwtsinx+Bsinwtcosx+Bcoswtsinx =(Acosx+Bsinx)coswt+(Bcosx-Asinx)sinwt =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,3.14,20);) {a[3]=A*cos(x)+B*sin(x); b[3]=B*cos(x)-A*sin(x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} a[3]=A;b[3]=B; /*"feixianxingshizhen", zhengjiaxingdepinlvfenliang**/ for(x=5,instKeyCtr();keyCtr(&x,5,10,5);) {N=(int)x; /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&xiangweishizhen", A(1+x)cos(wt+x)+B(1+x)sin(wt+x) =(1+x)[Acoswtcosx-Asinwtsinx+Bsinwtcosx+Bcoswtsinx] =(1+x)[(Acosx+Bsinx)coswt+(Bcosx-Asinx)sinwt] =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,3.14,20);) {a[3]=(A*cos(x)+B*sin(x))*(1+x); b[3]=(B*cos(x)-A*sin(x))*(1+x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&pinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=A*(x+1);b[3]=B*(x+1); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"xiangweipinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=A*cos(x)+B*sin(x); b[3]=B*cos(x)-A*sin(x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&xiangwei&pinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=(A*cos(x)+B*sin(x))*(1+x); b[3]=(B*cos(x)-A*sin(x))*(1+x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} closegraph(); } 2) #include doublesquarewave(doublet) {doublea; a=fmod(t,3); if(a>0)return(a<=1)? 1.0: 0.0; elsereturn(a>(-3+1))? 0.0: 1.0;} main() {doublea[20],b[20],c[20],A,B,x,T=4; inti,N=5; for(i=0;i<20;i++) {a[i]=fcosCoef(i,T,squarewave); b[i]=fsinCoef(i,T,squarewave); c[i]=WalCoef(i,T,squarewave);} A=a[3];B=b[3]; initgd(""); window2("distortionanalyse(=-ESC)", -5,3,5,-3, "t","f",BLUE,WHITE); /*: (x+1)Acoswt+(x+1)Bsinwt =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,4,20);) {a[3]=A*(x+1);b[3]=B*(x+1); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*: Acos(wt+x)+Bsin(wt+x) =Acoswtcosx-Asinwtsinx+Bsinwtcosx+Bcoswtsinx =(Acosx+Bsinx)coswt+(Bcosx-Asinx)sinwt =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,3.14,20);) {a[3]=A*cos(x)+B*sin(x); b[3]=B*cos(x)-A*sin(x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} a[3]=A;b[3]=B; /*"feixianxingshizhen", zhengjiaxingdepinlvfenliang**/ for(x=5,instKeyCtr();keyCtr(&x,5,10,5);) {N=(int)x; /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&xiangweishizhen", A(1+x)cos(wt+x)+B(1+x)sin(wt+x) =(1+x)[Acoswtcosx-Asinwtsinx+Bsinwtcosx+Bcoswtsinx] =(1+x)[(Acosx+Bsinx)coswt+(Bcosx-Asinx)sinwt] =a[3]coswt+b[3]sinwt*/ for(x=0,instKeyCtr();keyCtr(&x,0,3.14,20);) {a[3]=(A*cos(x)+B*sin(x))*(1+x); b[3]=(B*cos(x)-A*sin(x))*(1+x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&pinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=A*(x+1);b[3]=B*(x+1); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"xiangweipinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=A*cos(x)+B*sin(x); b[3]=B*cos(x)-A*sin(x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} /*"fudu&xiangwei&pinlvshizhen"*/ a[3]=A;b[3]=B; for(x=10,instKeyCtr();keyCtr(&x,10,20,10);) {N=(int)x; a[3]=(A*cos(x)+B*sin(x))*(1+x); b[3]=(B*cos(x)-A*sin(x))*(1+x); /*clearviewport();*/ plotxy2(BLUE,FouSer,&T,a,b,&N);} closegraph(); } 3) #include doubletrianglewave(doublet) {doubleu; if(t<0)t=-1*t; u=fmod(t,4); if(u<1)returnu; elsereturn4/3-u/3;} doublesquarewave(doublet) {doublea; a=fmod(t,3); if(a>0)return(a<=1)? 1.0: 0.0; elsereturn(a>(-3+1))? 0.0: 1.0;} doublezuhe(doublet) { return2*trianglewave(t)+squarewave(t); } main() {doublea[20],b[20],c[20],A,B,x,T=3; inti,N=5; for(i=0;i<20;i++) {a[i]=fcosCoef(i,T,zuhe); b[i]=fsinCoef(i,T,zuhe); c[i]=WalCoef(i,T,zuhe);} A=a[3];B
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 工程 实验 报告