matlab第一次实验报告

合集下载

MATLAB实验报告

MATLAB实验报告

实验一MATLAB操作基础实验目的和要求:1、熟悉MATLAB的操作环境及基本操作方法。

2、掌握MATLAB的搜索路径及设置方法。

3、熟悉MATLAB帮助信息的查阅方法实验内容:1、建立自己的工作目录,再设置自己的工作目录设置到MA TLAB搜索路径下,再试验用help命令能否查询到自己的工作目录。

2、在MA TLAB的操作环境下验证课本;例1-1至例1-4,总结MATLAB的特点。

例1-1例1-2例1-3例1-43、利用帮助功能查询inv、plot、max、round等函数的功能。

4、完成下列操作:(1)在matlab命令窗口输入以下命令:x=0:pi/10:2*pi;y=sin(x);(2)在工作空间窗口选择变量y,再在工作空间窗口选择回绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形,并分析图形的含义。

5、访问mathworks公司的主页,查询有关MATLAB的产品信息。

主要教学环节的组织:教师讲授实验目的、开发环境界面、演示实验过程,然后同学上机练习。

思考题:1、如何启动与退出MA TLAB集成环境?启动:(1)在windows桌面,单击任务栏上的开始按钮,选择‘所有程序’菜单项,然后选择MA TLAB程序组中的MA TLABR2008b程序选项,即可启动MATLAB系统。

(2)在MA TLAB的安装路径中找到MA TLAB系统启动程序matlab.exe,然后运行它。

(3)在桌面上建立快捷方式后。

双击快捷方式图标,启动MA TLAB。

退出:(1)在MA TLAB主窗口file菜单中选择exitMATLAB命令。

(2)在MA TLAB命令窗口中输入exit或quit命令。

(3)单击MATLAB主窗口的关闭按钮。

2、简述MATLAB的主要功能。

MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符号计算功能、绘图功能、编程语言功能以及应用工具箱的扩展功能。

3、如果一个MATLAB命令包含的字符很多,需要分成多行输入,该如何处理?使用‘;’隔开4、Help命令和lookfor命令有何区别?help是显示matlab内置的帮助信息一般是help 命令;而lookfor 关键词是通过关键词查找,“关键词”就是你要找的词语5、在MA TLAB环境下,建立了一个变量fac,同时又在当前目录下建立了一个m文件fac.m,如果需要运行fac.m文件,该如何处理?实验二MATLAB矩阵及运算实验目的和要求:1、掌握MATLAB数据对象的特点及运算规则2、掌握MATLAB建立矩阵的方法及矩阵处理的方法3、掌握MATLAB分析的方法实验内容:1.求下列表达式的值(1)(2)(3)(4)2.已知A=[-1,5,-4;0,7,8;3,61,7],B=[8,3,-1;2,5,3;-3,2,0] 求下列表达式的值:(1)A+6B和A^2-B+I(其中I为单位矩阵)。

Matlab基础运用实验报告1

Matlab基础运用实验报告1

(黑体3号)实验报告(黑体3号)课程:Matlab基础运用班级:姓名:学号成绩:指导教师:实验日期及时间:2009.9.16座位号:必修/选修:实验序号:实验名称:(标题均为黑体小4号)一、实验目的与要求:实验目的:Matlab是功能强大的科学及工程计算软件。

是以矩阵计算为基础的计算工具,本次实验通过学生对Matlab运行环境的熟悉和一些简单操作,掌握帮助命令、绘图命令以及矩阵操作等使用方法。

实验要求:1.上机结束时须经指导老师检查实验结果后方可离开。

2.课代表在实验后三天内将实验报告收齐交指导老师。

二、实验原理、内容和步骤(一)Matlab界面和矩阵运算基础1,建立自己的工作目录,将该目录设为当前目录,并将其设置成MATLAB的搜索路径。

2,熟悉Matlab的帮助功能。

采用两种方式获得关于函数“exp”的解释。

(1)利用Help Browser.(2)在Command Window下通过输入命令“help exp”。

(3)利用Help navigator3,从屏幕上输入矩阵A=[1 2 3;4 5 6;7 8 9]或A=[1,2,3;4,5,6;7,8,9]观察输出结果;试用回车代替分号,观察输出结果;4,选择File|new菜单中的M-file,输入B=[9 ,8,7;6,5,4;3,2,1],保存为tmp.m文件,退出编辑环境。

此时在工作环境中使用tmp命令就可调出B矩阵;5,输入who和whos观察结果,了解其作用;6,用至少两种方式创建以下矩阵。

A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡987654321>>a=[1 2 3;4 5 6;7 8 9]a =1 2 34 5 67 8 9或使用以下命令调用>> tmpa =1 2 34 5 67 8 9>>a=[1:3;4:6;7:9]a =1 2 34 5 67 8 9(二)基本绘图1, 绘制 sin (1/t), -1<t<1,标上坐标轴和标题.。

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

Matlab实验报告

Matlab实验报告

实验一:Matlab操作环境熟悉一、实验目的1.初步了解Matlab操作环境。

2.学习使用图形函数计算器命令funtool及其环境。

二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:1.单函数运算操作。

求下列函数的符号导数(1)y=sin(x); (2) y=(1+x)^3*(2-x);求下列函数的符号积分(1)y=cos(x);(2)y=1/(1+x^2);(3)y=1/sqrt(1-x^2);(4)y=(x1)/(x+1)/(x+2)求反函数(1)y=(x-1)/(2*x+3); (2) y=exp(x); (3) y=log(x+sqrt(1+x^2));代数式的化简(1)(x+1)*(x-1)*(x-2)/(x-3)/(x-4);(2)sin(x)^2+cos(x)^2;(3)x+sin(x)+2*x-3*cos(x)+4*x*sin(x);2.函数与参数的运算操作。

从y=x^2通过参数的选择去观察下列函数的图形变化(1)y1=(x+1)^2(2) y2=(x+2)^2(3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6)y6=x^2/23.两个函数之间的操作求和(1)sin(x)+cos(x) (2) 1+x+x^2+x^3+x^4+x^5乘积(1)exp(-x)*sin(x) (2) sin(x)*x商(1)sin(x)/cos(x); (2) x/(1+x^2); (3) 1/(x-1)/(x-2);求复合函数(1)y=exp(u) u=sin(x) (2) y=sqrt(u) u=1+exp(x^2)(3) y=sin(u) u=asin(x) (4) y=sinh(u) u=-x实验二:MATLAB基本操作与用法一、实验目的1.掌握用MATLAB命令窗口进行简单数学运算。

matlab入门 实验报告

matlab入门 实验报告

matlab入门实验报告《Matlab入门实验报告》Matlab是一种强大的数学软件,被广泛应用于工程、科学和金融领域。

它具有丰富的功能和灵活的编程语言,适用于数据分析、图形绘制、模型建立等多种应用。

本实验报告将介绍Matlab的基本操作和应用,帮助读者快速入门并掌握基本技能。

首先,我们将介绍Matlab的基本界面和操作方法。

Matlab的界面分为命令窗口、编辑窗口和工作区等部分,用户可以通过命令窗口输入指令进行计算和操作。

编辑窗口则用于编写和编辑Matlab脚本文件,工作区则显示当前的变量和数据。

通过这些基本操作,用户可以快速上手Matlab并进行简单的计算和数据处理。

其次,我们将介绍Matlab的基本数据类型和运算。

Matlab支持多种数据类型,包括数值、字符、逻辑等,用户可以通过简单的指令进行数据的存储和处理。

此外,Matlab还支持各种数学运算和函数,用户可以通过这些函数进行复杂的数学计算和数据分析。

通过实际的例子和练习,读者可以掌握Matlab的基本数据操作和运算方法。

最后,我们将介绍Matlab的图形绘制和数据分析功能。

Matlab提供了丰富的绘图函数和工具,用户可以通过简单的指令绘制各种图形和图表。

同时,Matlab还提供了各种数据分析和统计工具,用户可以通过这些工具进行数据的分析和可视化。

通过实际的案例和练习,读者可以掌握Matlab的图形绘制和数据分析技能。

总之,Matlab是一种强大的数学软件,具有丰富的功能和灵活的编程语言,适用于多种应用领域。

通过本实验报告的介绍和练习,读者可以快速入门Matlab 并掌握基本技能,为今后的学习和工作打下坚实的基础。

Matlabe的学习是一个循序渐进的过程,需要不断的实践和练习,相信通过努力,读者一定能够掌握Matlab并运用于实际的工程和科学问题中。

matlab第一次实验报告

matlab第一次实验报告

matlab第⼀次实验报告Matlab第⼀次实验报告2012029010010尹康1. 编程实现以下数列的图像,⽤户能输⼊不同的初始值以及系数。

并以x,y为坐标显⽰图像x(n+1) = a*x(n)-b*(y(n)-x(n)^2);y(n+1) = b*x(n)+a*(y(n)-x(n)^2)程序代码:n=input('input the number of pionts:');a=input('input a:');b=input('input b:');x=[];y=[];x(1)=input('input x1:');y(1)=input('input y1:'); %输⼊点数、初始值以及系数for i=2:nx(i)=a*x(i-1)-b*(y(i-1)-x(i-1)^2);y(i)=a*x(i-1)+b*(y(i-1)-x(i-1)^2); %根据已输⼊的数据进⾏迭代endfigure;plot(x,y,'linewidth',2)axis equal %横纵坐标等⽐例text(x(1),y(1),'1st point') %标记初始点运⾏结果:⼼得体会及改进:在输⼊某些数据时,所绘曲线可能是⼀条折线(如:n=5,a=b=x1=1,y1=2)甚⾄只有⼀个点(如:n=5,a=b=x1=y1=1),此时可能出现曲线与坐标轴重合或⽆法看到点的情况,为了更清晰地展现曲线,可以使线宽适当加宽并标记初始点。

2.编程实现奥运5环图,允许⽤户输⼊环的直径。

程序代码:函数circle:%在指定的圆⼼坐标处,⽤指定颜⾊、宽度的线条绘出指定半径、圆⼼⾓的弧function f=circle(r,x,y,color,linw,alp1,alp2)alp=linspace(alp1,alp2);X=r*cos(alp)+x;Y=r*sin(alp)+y;plot(X,Y,color,'linewidth',linw)end主程序代码:r=input('input r:');linw=10; t=0.5; %指定线宽、间隔时间title('奥运五环图')hold onaxis equalaxis([-2.8*r,5.4*r,-1.6*r,2.6*r]); %使横纵坐标等⽐列/给定坐标轴范围pause(t); circle(r,-1.2*r,r,'b',linw, 0.7*pi,1.8*pi);pause(t); circle(r,0.01*r,0,'y',linw, 0.5*pi,2.2*pi);pause(t); circle(r,-1.2*r,r,'b',linw,-0.3*pi,0.8*pi);pause(t); circle(r,1.25*r,r,'k',linw, 0.7*pi,1.8*pi);pause(t); circle(r,0.01*r,0,'y',linw, 0.1*pi,0.5*pi);pause(t); circle(r,2.49*r,0,'g',linw, 0.5*pi,2.2*pi);pause(t); circle(r,1.25*r,r,'k',linw,-0.3*pi,0.8*pi);pause(t); circle(r,3.70*r,r,'r',linw, 0.7*pi,1.8*pi);pause(t); circle(r,2.49*r,0,'g',linw, 0.1*pi,0.5*pi);pause(t); circle(r,3.70*r,r,'r',linw,-0.3*pi,0.8*pi);pause(t); axis off%隐藏坐标轴运⾏结果:⼼得体会及改进:1.⼀般来讲,后绘的图形会覆盖先绘的图形,可以利⽤这⼀特性,将五环分成⼗段先后绘出,通过覆盖到达“环环相扣”的效果;2.分别绘出⼗段图形时,发现⼤段代码相似甚⾄重复的,因此可编写`circle`函数来达到简化程序的⽬的;3.适当使⽤`pause`指令,突出分别绘出的⼗段图形的“先后”关系,更清晰地展现作者意图及绘图过程;4.第⼀次绘出图形后发现五环的位置没有达到预想效果时,不必重新建⽴坐标轴,可以通过微调圆⼼坐标(0.01r)修正。

初识MATLAB的实验报告

初识MATLAB的实验报告1. 引言MATLAB(Matrix Laboratory)是一种高级的技术计算环境和编程语言。

它具有强大的矩阵计算能力和丰富的科学和工程绘图功能,被广泛应用于各个领域的科研与工程实践中。

本实验旨在初步了解MATLAB的基本语法和功能,通过实际操作加深对MATLAB编程的理解。

2. 实验目的1. 掌握MATLAB的安装和基本使用方法;2. 学习MATLAB中的常用数学函数和操作;3. 了解MATLAB绘图功能并能够绘制简单的图形。

3. 实验步骤3.1 MATLAB安装首先,在官方网站(3.2 MATLAB入门3.2.1 MATLAB语法MATLAB的语法类似于其他常见的编程语言,每个语句以分号结尾。

在MATLAB 中,可以直接进行基本的数学运算,例如加减乘除、指数、对数等。

通过以下代码可以计算两个变量的和并将结果打印出来:matlaba = 10;b = 20;sum = a + b;disp(sum);3.2.2 MATLAB变量在MATLAB中,可以创建和操作各种类型的变量,例如数值、字符串、矩阵等。

以下代码演示了如何创建一个矩阵:matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];disp(matrix);3.2.3 MATLAB函数MATLAB提供了许多内置的数学函数,可以直接调用。

以下代码演示了如何计算正弦函数值并打印结果:matlabx = pi/4;y = sin(x);disp(y);3.3 MATLAB绘图MATLAB具有强大的绘图功能,可以绘制各种图形,如曲线、散点图、柱状图等。

以下代码演示了如何绘制一个简单的正弦曲线:matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('y');title('Sine Curve');4. 实验结果与分析在完成上述实验步骤后,我们成功安装了MATLAB,并学习了基本的语法、变量和函数的使用方法。

MATLAB实验报告1(推荐文档)

学生实验报告一、实验目的 熟悉MATLAB 软件的用户环境;了解MATLAB 软件的一般命令;掌握MATLAB 向量、数组、矩阵操作与运算函数;掌握MATLAB 软件的基本绘图命令;掌握MATLAB 语言的几种循环、条件和开关选择结构,及其编程规范。

通过该实验的学习,使学生能灵活应用MATLAB 软件解决一些简单问题,能借助MATLAB 软件的绘图功能,对函数的特性进行探讨,广泛联想,大胆猜想,发现进而证实其中的规律。

二、实验仪器、设备或软件: 电脑,MATLAB 软件三、实验内容 1.MATLAB 软件的数组操作及运算练习;2.直接使用MATLAB 软件进行作图练习;3.用MATLAB 语言编写命令M 文件和函数M 文件。

四、实验步骤1.在D 盘建立一个自己的文件夹;2.开启软件平台——MATLAB ,将你建立的文件夹加入到MATLAB 的搜索路径中;3.利用帮助了解函数max, min, sum, mean, sort, length ,rand, size 和diag 的功能和用法;4.开启MATLAB 编辑窗口,键入你编写的M 文件(命令文件或函数文件);5.保存文件(注意将文件存入你自己的文件夹)并运行;6.若出现错误,修改、运行直到输出正确结果;7.写出实验报告,并浅谈学习心得体会。

五、实验要求与任务根据实验内容和步骤,完成以下具体实验,要求写出实验报告(实验目的→问题→算法与编程→计算结果或图形→心得体会)1. 已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=321212113A , ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=101012111B 要求:(1)屏幕输出A 与B ;(2)A 的转置A′;(3)求A+B 的值;(4)求A-B 的值;(5)求4A ;(6)求A×B ;(7)求A -1.2. 有一函数f (x ,y )=x 2+sin xy +2y ,写一程序,输入自变量的值,输出函数值。

3. 用plot ,fplot 分别绘制函数y =cos(tan(πx ))图形。

matlab实验报告1

matlab实验报告1MATLAB实验报告1摘要:本实验使用MATLAB软件进行了一系列的实验,主要包括数据处理、图像处理和信号处理。

通过实验,我们掌握了MATLAB软件在科学计算和工程领域的应用,深入了解了MATLAB在数据处理、图像处理和信号处理方面的强大功能。

一、数据处理实验在数据处理实验中,我们使用MATLAB对一组实验数据进行了分析和处理。

首先,我们导入了实验数据并进行了数据清洗和预处理,然后利用MATLAB的统计分析工具对数据进行了描述性统计分析,包括均值、方差、标准差等指标的计算。

接着,我们利用MATLAB的绘图工具绘制了数据的直方图和散点图,直观地展现了数据的分布规律和相关性。

二、图像处理实验在图像处理实验中,我们使用MATLAB对一幅图像进行了处理和分析。

首先,我们读取了图像并进行了灰度化处理,然后利用MATLAB的图像滤波工具对图像进行了平滑和锐化处理,最后利用MATLAB的图像分割工具对图像进行了分割和特征提取。

通过实验,我们深入了解了MATLAB在图像处理领域的应用,掌握了图像处理的基本原理和方法。

三、信号处理实验在信号处理实验中,我们使用MATLAB对一组信号进行了处理和分析。

首先,我们生成了一组模拟信号并进行了频域分析,利用MATLAB的信号滤波工具对信号进行了滤波处理,然后利用MATLAB的频谱分析工具对信号的频谱特性进行了分析。

通过实验,我们深入了解了MATLAB在信号处理领域的应用,掌握了信号处理的基本原理和方法。

综上所述,本实验通过对MATLAB软件的应用实验,使我们对MATLAB在数据处理、图像处理和信号处理方面的功能有了更深入的了解,为我们今后在科学计算和工程领域的应用奠定了良好的基础。

MATLAB软件的强大功能和广泛应用前景,将为我们的学习和科研工作提供有力的支持和帮助。

matlab实验一实验报告

石家庄铁道大学《Matlab语言及其应用》实验报告--实验1 Matlab软件环境的基本使用实验者姓名:韩云星实验者学号:20153254实验者班级:信1501-1所在学院:信息科学与技术学院课程编号:RL090011指导教师:刘展威报告完成日期:2017年 4月 28 日实验一熟悉MATLAB 工作环境一、实验目的1、了解Matlab的发展和主要功能;2、熟悉Matlab工作环境的各个窗口;3、掌握建立矩阵的方法;4、掌握Matlab各种表达式的书写规则以及常用函数的使用。

二、实验内容图 1实验内容1图 2实验内容2图 3实验内容3三、实验设备和软件环境处理器: Intel(R) Core(TM) i5-6200 CPU @ 2.30GHz (4 CPUs), ~2.3GHz内存: 4096MB RAMIntel(R) Core(TM) i5-6200 CPU @ 2.30GHz (8 CPUs), ~2.3GHz硬盘: Model: ATA ST2000DM001-1ER1 SCSI Disk Device操作系统: Windows 7 旗舰版 64-bit (6.1, Build 7601) (7601.win7_gdr.101026-1503)Matlab版本:9.0.0.341360 (R2016a)四、实验步骤或过程1.在命令窗口依次输入下列命令,根据执行结果分析其功能:help在命令窗口输入后,会看到帮助的目录信息,如下图所示图 4 帮助的目录信息lookfor inv输入后会在命令窗口显示帮助中含有字母inv的函数和函数功能的列表。

图 5 帮助中含有字母inv的函数和函数功能help inv查找函数inv,并显示其帮助信息。

图 6查找函数invWhich inv显示函数保存的位置信息和类型。

图 7显示函数保存的位置信息和类型2.建立自己的工作目录,再将自己的工作目录设置到Matlab搜索路径下。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Matlab第一次实验报告
2012029010010
尹康
1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。

并以x,y为坐标显示图像
x(n+1) = a*x(n)-b*(y(n)-x(n)^2);
y(n+1) = b*x(n)+a*(y(n)-x(n)^2)
程序代码:
n=input('input the number of pionts:');
a=input('input a:');
b=input('input b:');
x=[];
y=[];
x(1)=input('input x1:');
y(1)=input('input y1:'); %输入点数、初始值以及系数for i=2:n
x(i)=a*x(i-1)-b*(y(i-1)-x(i-1)^2);
y(i)=a*x(i-1)+b*(y(i-1)-x(i-1)^2); %根据已输入的数据进行迭代end
figure;plot(x,y,'linewidth',2)
axis equal %横纵坐标等比例
text(x(1),y(1),'1st point') %标记初始点
运行结果:
心得体会及改进:在输入某些数据时,所绘曲线可能是一条折线(如:n=5,a=b=x1=1,y1=2)甚至只有一个点(如:n=5,a=b=x1=y1=1),此时可能出现曲线与坐标轴重合或无法看到点的情况,为了更清晰地展现曲线,可以使线宽适当加宽并标记初始点。

2.编程实现奥运5环图,允许用户输入环的直径。

程序代码:
函数circle:
%在指定的圆心坐标处,用指定颜色、宽度的线条绘出指定半径、圆心角的弧
function f=circle(r,x,y,color,linw,alp1,alp2)
alp=linspace(alp1,alp2);
X=r*cos(alp)+x;
Y=r*sin(alp)+y;
plot(X,Y,color,'linewidth',linw)
end
主程序代码:
r=input('input r:');
linw=10; t=0.5; %指定线宽、间隔时间
title('奥运五环图')
hold on
axis equal
axis([-2.8*r,5.4*r,-1.6*r,2.6*r]); %使横纵坐标等比列/给定坐标轴范围pause(t); circle(r,-1.2*r,r,'b',linw, 0.7*pi,1.8*pi);
pause(t); circle(r,0.01*r,0,'y',linw, 0.5*pi,2.2*pi);
pause(t); circle(r,-1.2*r,r,'b',linw,-0.3*pi,0.8*pi);
pause(t); circle(r,1.25*r,r,'k',linw, 0.7*pi,1.8*pi);
pause(t); circle(r,0.01*r,0,'y',linw, 0.1*pi,0.5*pi);
pause(t); circle(r,2.49*r,0,'g',linw, 0.5*pi,2.2*pi);
pause(t); circle(r,1.25*r,r,'k',linw,-0.3*pi,0.8*pi);
pause(t); circle(r,3.70*r,r,'r',linw, 0.7*pi,1.8*pi);
pause(t); circle(r,2.49*r,0,'g',linw, 0.1*pi,0.5*pi);
pause(t); circle(r,3.70*r,r,'r',linw,-0.3*pi,0.8*pi);
pause(t); axis off%隐藏坐标轴
运行结果:
心得体会及改进:1.一般来讲,后绘的图形会覆盖先绘的图形,可
以利用这一特性,将五环分成十段先后绘出,通过覆盖到达“环环相扣”的效果;2.分别绘出十段图形时,发现大段代码相似甚至重复的,因此可编写`circle`函数来达到简化程序的目的;3.适当使用`pause`指令,突出分别绘出的十段图形的“先后”关系,更清晰地展现作者意图及绘图过程;4.第一次绘出图形后发现五环的位置没有达到预想效果时,不必重新建立坐标轴,可以通过微调圆心坐标(0.01r)修正。

3.实现对输入任意长度向量元素的冒泡排序的升序排列(不允许使用sort函数)程序代码:
A=input('input numbers:'); %输入待排序向量(按[a1,a2,……]输入)[m,n]=size(A); %确定向量中元素个数n
sort_A=A;
for i=1:n
for j=1:(n-i)
if sort_A(j)>sort_A(j+1)
t=sort_A(j);
sort_A(j)=sort_A(j+1);
sort_A(j+1)=t;
end
end
end %使用冒泡法对sort_A中元素按升序排序sort_A
运行结果:
心得体会及改进:1.用`input`指令输入向量时,应该用`[`、`]`将
数据括起来;2.为了预防排序后需要调用原向量A的情况,可以将A 中元素复制到sort_A中,再对sort_A进行排序。

相关文档
最新文档