实验三MATLAB的程序设计

桂林电子科技大学

数学与计算科学学院实验报告

M函数文件:

function lx12(a,b,c)

x=[-5:5/1000:5];

y=a.*x.^2+b.*x+c;

plot(x,y)

运行函数:

lx12(1,1,1)

f x的函

2. 编程实现:输入x的值,计算函数()

-

(0.7),(0.5),(1.5)

f f f

M函数文件:

实验三_M_文件及_MATLAB_程序设计与调试

实验三M 文件及MATLAB 程序设计与调试 一、实验目的 全面掌握在MA TLAB 下进行程序设计的有关问题,具体涉及到M 脚本文件和M 函数文件的编写、全局和局部变量的使用、流程控制结构、提高程序执行效率的设计技术、程序调试等问题。 二、实验内容 1、关于M 脚本文件和M 函数文件 MATLAB 的M 文件有两类:脚本文件和函数文件。 (1)脚本文件——将原本要在MATLAB 的指令窗口中直接输入的语句,放在一个以.m 为后缀的,称为脚本文件中。有了脚本文件,可直接在MATLAB 中输入脚本文件名(不含后缀)。MATLAB 会打开这一脚本文件,并依次执行脚本文件中的每一条语句,这与在MATLAB 中直接输入语句的结果完全一致。 (2)函数文件——它的第一行必须是函数定义行。 M 函数文件由5 部分构成: ◆函数定义行 ◆H1 行 ◆函数帮助文本 ◆函数体 ◆注释 注意:在函数文件中,除了函数定义行之外,其它部分都是可以省略的。但作为一个函数,为了提高函数的可用性,应加上H1 行和函数帮助文本,为了提高函数的可读性,应加上适当的注释。 例如: function y = mean(x) % MEAN Average or mean value. % For vectors, MEAN(X) is the mean value of the elements in X. % For matrices, MEAN(X) is a row vector containing the mean value of each column. [m,n]=size(x); if m==1 % Determine whether x is a vector m=n; end y = sum(x)/m; ①函数定义行:function y = mean(x)

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)

实验3:MATLAB编程基础

实验三 MATLAB 编程基础 【实验目的】 1、学习和掌握M 文件的创建与使用; 2、学习和掌握MA TLAB 软件程序的控制结构与语句; 3、学习简单编程; 【实验内容、方法与步骤】 一、M 文件 M 文件有两种形式:命令文件和M 函数文件。它们都是由若干MATLAB 语句或命令组成的文件。两种文件的扩展名都是.m 。要注意的是M 文件名一定以字母开头,而且最好不要与内置函数重名。 在M 文件中,当表达式后面接分号时,表达式的计算结果虽不显示但中间结果仍保存在内存中。若程序为命令文件,则程序执行完以后,中间变量仍予以保留;若程序为函数文件,则程序执行完以后,中间变量被全部删除。 1、文件的操作 MATLAB 对文件的打开、关闭和保存等操作与Word 完全类似。在MATLAB 中新建M 文件的操作是在命令窗口中选择,然后用鼠标单击M-File ,可以打开MATLAB 自带的“M 函数与M 文件编辑器”(见图2.4),用户可以在此编辑窗口来编辑一个新的M 文件。MATLAB 自带的“M 函数与M 文件编辑器”还可以用来对已经存在的M 文件进行编辑、存储、修改和读取。 2、命令文件 命令文件的一般形式为: .m 如a1.m, pp.m 等都是合法的M 文件名。 M 文件有两种运行方式: 一是在命令窗口直接写文件名,按Enter 键; 二是在编辑窗口打开菜单Debug ,再单击Run 。M 文件保存的路径一定要在搜索路径上,否则M 文件不能运行。 【例1】 用M 命令文件画出衰减振荡曲线t e y t 3sin 3-=及其它的包络线3t e y -=。t 的取值范围是]4,0[π。 解:步骤: 1.打开MATLAB 命令窗口,单击-file 打开M 文件编辑器窗口; 2.在编辑窗口逐行写下列语句; t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*sin(3*t);

MATLAB实验三(2)程序设计

实验三(2)、MA TLAB程序设计 一、实验目的 1、掌握建立和执行M文件的方法 2、掌握利用for语句和while语句实现选择结构的方法 二、实验内容及步骤 1、分别使用for循环语句和while循环语句找出最小的n值, 使得n!>10100,并求出n!。要求显示的结果为 n=70 n!=1.197857e+100>1e100 或 70!=1.197857e+100>1e100 for语句 clear all; for i=1:999 am=1; for j=1:i am=am*j; end if am>10^100 break; end end fprintf('n=%d \n',i); fprintf('n!=%d>%d \n',am,10^100); while语句 clear all; am=1; i=1; while(am<10^100) i=i+1; am=am*i; end fprintf('n=%d \n',i); fprintf('n!=%d>%d \n',am,10^100);

2、已知f1=1,n=1 f2=0,n=2 f3=1,n=3 f n=f n-1-2f n-2+f n-3,n>3 求f1 ~ f50中: 1)最大值和最小值及它们的位置,各数之和(最大值给变量MAX,其位置给变量x,最小值给变量MIN,其位置给变量y,各数之和给变量SUM)。 2)正数、零、负数的个数(依次赋值给变量positive,zero, negative)。 clear all; f(1)=1;f(2)=0;f(3)=1; for n=4:50 f(n)=f(n-1)-2*f(n-2)+f(n-3); end [MAX,x]=max(f); [MIN,y]=min(f); SUM=sum(f); positive=length(find(f>0)); zero=length(find(f==0)); negative=length(find(f<0)); fprintf('MIN=%d \t x=%d \n',MIN,x); fprintf('MAX=%d \t y=%d \n',MAX,y); fprintf('SUM=%d \n',SUM); fprintf('positive=%d zero=%d negative=%d \n',positive,zero,negative); 3、Fibonacci数组的元素满足Fibonacci规则: a k+2=a k+a k+1,(k=1,2,3,…);且a1= a2=1。 请设计一段程序,求出该数组中第一个大于10000的元素 要求显示的结果为:

matlab 实验三 matlab程序设计与优化

matlab 实验三 matlab程序设计与优化 Matlab是一种高级的计算机编程语言,广泛应用于科学、工程、金融和其他领域。在Matlab实验三中,我们将学习Matlab程序设计与优化。本文将介绍Matlab实验三的内容和要求,并提供一些有用的技巧和建议,帮助读者更好地完成实验。 实验三的主要内容包括: 1. Matlab程序设计基础 2. Matlab程序优化技巧 3. Matlab代码调试方法 4. Matlab性能分析工具 5. 实例分析与练习题 下面我们将逐个介绍这些内容。 1. Matlab程序设计基础

在本节中,我们将学习如何使用Matlab编写简单的程序。以下是一 些重要的概念和技巧: 1)变量和数据类型:在Matlab中,变量可以存储不同类型的数据,如数字、字符串、逻辑值等。常见的数据类型包括double、char、logical等。 2)运算符:Matlab支持各种数学运算符,包括加减乘除、幂运算等。此外,还有逻辑运算符(如and、or)和比较运算符(如==、~=)。 3)控制结构:控制结构可以控制程序执行流程。常见的控制结构包括if语句、for循环和while循环。 4)函数:函数是一种可重复使用的代码块,可以接受输入参数并返回输出结果。Matlab中有很多内置函数,也可以编写自己的函数。 2. Matlab程序优化技巧 在本节中,我们将学习如何优化Matlab程序以提高其性能。以下是 一些重要的技巧: 1)向量化:向量化是一种将循环操作转换为矩阵操作的技术。这样可

以减少程序执行时间,并且使代码更简洁。 2)预分配数组:在编写Matlab程序时,应尽可能避免动态数组分配。相反,应该预先分配所需大小的数组。 3)使用内置函数:Matlab中有许多内置函数,它们通常比用户自定 义函数更快。因此,在编写程序时应尽可能使用内置函数。 4)避免不必要的计算:在编写程序时,应尽可能避免不必要的计算。例如,在循环中进行重复计算或计算已知结果等。 3. Matlab代码调试方法 在本节中,我们将学习如何调试Matlab代码以解决错误和问题。以 下是一些重要的技巧: 1)使用断点:断点是一种在程序执行期间停止执行的方式。可以使用断点来检查变量值、调用堆栈等信息。 2)输出调试信息:可以使用disp函数或fprintf函数输出调试信息。这样可以帮助我们理解程序执行过程中发生了什么。 3)使用Matlab调试器:Matlab还提供了一个强大的调试器,可以

matlab实验3

一实验题目:实验三 抽样 二实验原理: 抽样过程两个基本原理:混叠和重建。 由于在MATLAB 中不能产生模拟信号,所以需要做实轴t 轴的仿真。因此,把仿真时的△t 与所研究的抽样周期s T 明确的放开是很重要的 对连续时间正弦信号考虑下面的表达式: 0()sin (2)x t f t πθ=+ 可以按抽样频率1/s s f T =对x(t)抽样来获得离散时间信号 /0[]()|()|sin(2/)s s t nT t n f s x n x t x t f n f πθ=====+ 对连续时间信号抽样时,因为频域以抽样频率延拓,故其频谱显现出混叠效应。在MATLAB 中,只能仿真这一效应。仿真包括抽样运算,D/A 转换(包括一个重建滤波器)。为了仿真模拟信号,必须用非常高的采样率—至少是任何模拟信号所允许的具有的最高频率的5倍。测试混叠。 三实验内容: 1.以不同组合的 0f 和 s f 绘出x[n], s f =8kHz, 0f =300Hz,在10ms 长间隔上采样,相位θ 任意指定。 a. 使用stem 绘出产生的离散信号 b. 使用plot 绘图 c. 把正弦频率从100Hz 变至475Hz ,每次增加125Hz,用subplot 指令把四个图放在一个屏 上。 d. 把正弦频率从7525Hz 变至7900Hz ,每次增加125Hz,用subplot 指令把四个图放在一个 屏上。 e. 把正弦频率从32,100Hz 变至32,475Hz ,每次增加125Hz,用subplot 指令把四个图放在 一个屏上。提前预测显现的频率将会增加还是减少。 2.用M 文件绘制模拟频谱 3.a.产生一个模拟频率为0f 的余弦信号作为仿真的模拟信号 △0()cos(2),0x t f t t T πθ=+≤≤ 在长度为T 的时间间隔上,以速率sim f 产生抽样样本。选择仿真模拟信号长度T 以取得大约900到1000个样本。 b.用plot 指令将绘出的时间信号样本连接起来,确定用时间连续时间标记时间轴。 c.绘出此信号的傅里叶变换。 4.仿真A/D 转换 a.绘出s f =8kHz 时产生的离散时间信号 b.计算离散时间信号的DTFT 并解释它如何与模拟信号的傅里叶变换相联系 5.设计一个重建滤波器

MATLAB实验三(1)程序设计

实验三(1)、MA TLAB程序设计 一、实验目的 1、掌握建立和执行M文件的方法 2、掌握利用if语句和switch语句实现选择结构的方法 二、实验内容及步骤 1、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。 其中90分~100分为A,80分~89分为B,70分~79为C, 60分~69分为D,60分以下为E。 要求:1)分别用if语句和switch语句实现 2)对不合理的成绩应输出出错信息“输入的成绩不合理”(若成绩出现小数,则只能是“.5”) switch语句 clear all; mark=input('请输入分数'); switch mark case num2cell(90:0.5:100) result='A'; case num2cell(80:0.5:89.5) result='B'; case num2cell(70:0.5:79.5) result='C'; case num2cell(60:0.5:69.5) result='D'; case num2cell(0:0.5:59.5) result='E'; otherwise result='输入成绩不合理'; end result if语句 clear all; a=input('请输入分数');

if rem(a,0.5) result='输入有误!'; elseif a<=100&&a>=90 result='A'; elseif a<90&&a>=80 result='B'; elseif a<80&&a>=70 result='C'; elseif a<70&&a>=60 result='D'; elseif a<60&&a>=0 result='E'; else result='输入有误!'; end result 2、设计程序,完成两位数的加、减、乘、除四则运算,即产生 两个两位随机整数,再输入一个运算符号,做相应的运算, 显示相应的结果,并要求结果显示类似于“a=x+y=34”。 (sy312.m) clear all; x= floor(90*rand)+10 ; y= floor(90*rand)+10 ; sign=input('ÇëÊäÈëÔËËã·û£º','s'); switch sign case'+' a=x+y; fprintf('a=%d+%d=%d',x,y,a); case'-' a=x-y; fprintf('a=%d-%d=%d',x,y,a); case'*' a=x*y; fprintf('a=%d*%d=%d',x,y,a); case'/' a=x/y; fprintf('a=%d/%d=%d',x,y,a);

matlab程序设计与优化的实验三

matlab程序设计与优化的实验三 实验三:MATLAB程序设计与优化 1. 引言 在实验室研究和工程开发中,MATLAB是一种非常流行和强大的工具,用于进行数值计算,数据分析和可视化。为了提高MATLAB程序的性能和效率,程序优化是其中的关键步骤之一。本实验将介绍MATLAB 程序设计与优化的重要性,并探讨一些实用的优化技巧。 2. 程序设计与性能评估 在开始编写和优化MATLAB程序之前,首先需要理解程序设计和性能评估的基本概念。程序设计涉及到选择合适的数据结构、算法和编程 技巧,以实现预期的功能。而性能评估则是通过测量程序的执行时间、占用的内存和CPU使用率等指标,来评估程序的效率和优化空间。 3. 代码向量化优化 代码向量化是一种重要的优化技巧,可以大大提高MATLAB程序的执行速度。向量化是将循环和条件语句替换为矩阵和向量操作的过程, 从而减少了循环迭代的次数,提高了代码的效率。在实验中,我们可 以通过使用MATLAB内置的向量和矩阵运算函数,如sum、mean和dot等,来实现代码向量化。

4. 内存管理和预分配 在编写MATLAB程序时,合理的内存管理和预分配也是优化的重要方面。内存管理涉及到使用合适的数据结构来存储数据,并避免不必要 的内存分配和释放操作。而预分配则是一种预先分配足够的内存空间,以避免频繁的内存重新分配操作。这样可以减少程序的运行时间和内 存占用。 5. 函数和脚本的优化 除了代码级别的优化,函数和脚本的优化也是提高MATLAB程序性能的关键。函数优化可以通过减少函数的输入和输出参数个数,避免全 局变量的使用以及使用精确的数据类型等方式来实现。而脚本优化则 涉及到合理的脚本结构和逻辑,以提高整个脚本的执行效率。 6. 并行计算和多线程 随着多核处理器的普及,利用并行计算和多线程技术来加速MATLAB 程序变得越来越重要。MATLAB提供了Parallel Computing Toolbox和Multithreading Support等工具箱,可用于实现并行计 算和多线程操作。通过合理地分解任务,使用多个处理器或线程来同 时运行程序,可以显著提高程序的执行速度。 7. 代码剖析和优化器 与其他一些编程语言不同,MATLAB具有内置的代码剖析器和优化器,

MATLAB程序设计及应用课程设计

MATLAB程序设计及应用课程设计 一、课程设计背景和目的 MATLAB是一种广泛应用于各个领域的计算机语言,是许多科学和工程领域的标准工具之一,其强大的数学计算能力和图像处理能力使其在科学计算、数据分析、仿真和控制系统设计等方面拥有广泛的应用。本课程设计旨在通过学生的实践操作,运用MATLAB软件进行程序开发和相关应用,掌握MATLAB的基本操作和应用技能,培养学生的实践能力,提高MATLAB应用能力和解决问题的能力。 二、课程设计任务 1. 熟悉MATLAB基本操作 在学习前,学生需要对MATLAB软件的基本操作有所了解。在课程设计开始之前,需要学生自学MATLAB的基本操作。 2. 设计并实现简单的程序 在学习MATLAB的基本操作后,学生需要设计并实现一个简单的程序,例如实 现一个线性函数的计算。当程序设计完成后,需要生成程序的图像,并生成程序的代码。 3. 设计并实现高级程序 在掌握基本程序设计技能的基础上,学生需要设计并实现一个较为复杂的程序,例如实现一个数字信号的滤波。当程序设计完成后,需要生成程序的图像和代码,并进行程序的性能评估。

4. 应用MATLAB进行信号处理 在以上任务完成后,学生需要根据之前学习的知识和技能,结合MATLAB进行 信号处理的实践应用。例如根据余弦函数的变化规律设计程序,完成余弦信号的生成和分析。 三、课程设计实施过程 1. 阶段一:自学MATLAB基本操作 在开课前,要求学生阅读相关学习资料,自学MATLAB的基本操作方法和语法。 2. 阶段二:设计并实现简单的程序 在第一阶段完成后,学生需要设计并实现一个简单的程序。教师和助教将针对 学生的程序进行代码审查和基本语法的指导,让学生更好地理解和掌握MATLAB语 言的特点和使用方法。 3. 阶段三:设计并实现高级程序 在简单程序实现完成后,学生需要进一步设计并实现一个较为复杂的程序。教 师和助教将在本阶段对学生的代码进行查错和程序性能的分析,帮助学生更加清晰地理解程序框架和算法原理。 4. 阶段四:应用MATLAB进行信号处理 在高级程序实现完成后,学生需要进一步应用MATLAB进行信号处理实践。教 师和助教将提供一定的信号处理案例和相关的数据采集等实验设备。学生需要独立完成实验,并将信号处理结果反馈给教师和助教进行评估。 5. 阶段五:课程总结 在实践课程设计结束后,学生需要进行课程总结。教师和助教将组织学生交流 和总结,加深学生对MATLAB程序设计及其应用的理解和掌握。

matlab程序设计实验报告

实验报告 课程名称:可视化计算机语言实验项目名称:matlab程序设计学院:信息工程学院 专业:电子信息工程 指导教师: 报告人:学号:班级: 实验时间: 实验报告提交时间: 教务部制

一、实验目的与要求: 1、熟练掌握matlab的程序流程控制结构.. 2、熟悉掌握M文件的结构和函数调用.. 3、掌握内联函数和函数句柄的使用.. 4、了解程序性能剖析窗口.. 二、内容和步骤: MATLAB的语法规则简洁;编程效率高;作为一个完整的程序语言;MATLAB也有各种程序流程控制;文件格式和函数调用的规则;通过对函数的调用就能够组成庞大的程序;完成复杂的功能.. 1.使用程序流程控制 Fibonacci数列的各元素为:1、1、2、3、5、8、...满足一下关系 F1=1 F2=1 F n=F n-1+F n-2 用M函数文件实现;数列的元素个数为输入变量.. (1)按M函数文件格式创建文件开头.. function f=shiyan0501n %SHIYAN0501 %Fibonacci数列 %n 元素个数 %f 构成Fibonacci数列向量 % %copyright 2015-11-25 (2)用while循环实现程序功能 f1=1; f2=1; i=2; while i<=n fi+1=fi-1+fi; i=i+1; End 运行后;输入参数10;运行结果如下所示: (3)使用for循环实验 for i=2:n fi+1=fi-1+fi; end 运行结果如下所示:

(4)当某个元素大于50时;退出循环结构;程序修改如下: for i=2:n if fi>10 break else fi+1=fi-1+fi; end end 当某个元素大于50;程序便退出循环结构 当n=10;最后一个元素刚好是大于50的;正好退出循环结构 当n=12时;第十个元素对应的fi大于50;于是退出循环结构;不再运行f11;f12了.. (5)将该.m文件生成P码文件 >> pcode shiyan0501 将shiyan0501.m删除;重新运行该文件夹;结果如下所示: 练习: 将该M文件函数改为M脚本文件;将数列元素个数通过键盘输入;程序应该如何修改 ①将M文件函数另存为M脚本文件; ②在函数前加 n=input'please input a num:' 便可通过键盘键入文件

MATLAB实验三选择结构程序设计

MATLAB实验三选择结构程序设计 MATLAB(Matrix Laboratory)是一种用于数值计算和科学计算的编程语言和环境。在MATLAB中,选择结构是一种常见的程序设计方法,可以根据条件选择不同的执行路径。本文将介绍选择结构在MATLAB中的应用,并通过实例进行演示。 选择结构通常包括if语句和switch语句两种形式。if语句用于根据条件判断选择执行哪个分支,而switch语句则根据不同的表达式值选择执行不同的分支。 首先,我们来看一个简单的if语句的例子: ```matlab x=10; if x > 0 disp('x is positive'); elseif x < 0 disp('x is negative'); else disp('x is zero'); end ```

在上述代码中,首先定义了一个变量x,并根据x的值判断其正负情况。如果x大于0,则输出'x is positive';如果x小于0,则输出'x is negative';如果x等于0,则输出'x is zero'。通过if语句的不同分支,我们可以根据条件执行不同的操作。 if语句还可以嵌套,实现多个条件的判断。以下是一个简单的嵌套if语句的例子: ```matlab x = input('请输入一个数字:'); if x > 0 if x < 10 disp('x is between 0 and 10'); elseif x > 10 disp('x is greater than 10'); else disp('x is 10'); end else disp('x is less than or equal to 0'); end ```

matlab程序设计教程第三版 实验指导

matlab程序设计教程第三版实验指导 MATLAB 是一种非常强大的数学软件工具,可以用于问题建模、算法实现、数据分析和可视化等多个领域。本实验指导将引导读者从基本的程序设计开始,逐步学习如何使用 MATLAB 进行编程。 在开始编程之前,我们首先要熟悉 MATLAB 的界面。MATLAB 的界面非常直观和友好,具有丰富的交互功能和图形界面。我们将逐步介绍 MATLAB 工作环境中的各个组件,并向读者展示如何创建新的脚本文件、运行代码以及调试程序。 接下来,我们将深入研究 MATLAB 编程的核心概念和语法。我们将介绍如何定义变量、进行数学运算、编写条件语句和循环结构,以及如何使用函数和脚本文件。我们还将探讨如何创建和操作矩阵、处理字符串和字符数组,并介绍 MATLAB 中常用的文件处理和输入输出操作。 在学习完基本的 MATLAB 编程知识后,我们将进一步学习如何解决实际的问题和应用。我们将通过一系列的实例,引导读者学习如何构建和调试复杂的算法,如排序、搜索、图形绘制等。我们还将介绍如何处理和分析实际的数据集,包括数据读取、预处理、统计分析和可视化等。 最后,我们将介绍如何通过 MATLAB 进行更高级的编程和应用开发。我们将向读者展示如何编写自定义函数和类,以及如何使用

MATLAB 的工具箱和库函数进行更加专业和复杂的编程任务。我们还将 了解如何编写 GUI 界面程序,以及如何进行并行计算和部署应用程序。 通过本实验指导的学习,读者将能够掌握 MATLAB 的基本编程技 巧和应用技术,并能独立解决实际问题。无论是从事科学研究、工程 设计还是数据分析和可视化,MATLAB 都是一种非常有用和高效的工具。希望本实验指导能够为读者提供全面、生动和有指导意义的学习内容,帮助读者在 MATLAB 的世界中游刃有余。

实验3 MATLAB程序设计

实验3 MATLAB程序设计 实验3 MATLAB程序设计 一、实验目的 本实验的主要目的是通过实际的编程练习,掌握和熟悉MATLAB 程序设计的基本知识和技巧。通过本实验的学习,能够灵活使用MATLAB进行程序设计,解决实际问题。 二、实验内容 1. MATLAB语言基础 在本部分,我们将介绍MATLAB语言的基本语法和常用函数的使用方法。 1.1. 变量定义和赋值 在MATLAB中,可以通过简单的语法来定义和赋值变量。例如,`a = 10;`表示将值10赋给变量a。,MATLAB也支持定义矩阵和向量。 1.2. 数学运算 MATLAB提供了丰富的数学运算函数,如加法、减法、乘法、除法等等。通过这些函数,我们能够进行各种数学运算。 1.3. 条件语句和循环语句

条件语句和循环语句在程序设计中非常重要。在MATLAB中,我们可以使用if-else语句来进行条件判断,使用for循环和while 循环来实现循环操作。 2. MATLAB绘图功能 MATLAB的绘图功能非常强大,可以用于绘制各种图形,如曲线图、散点图、柱状图等等。 2.1. 绘制曲线图 在MATLAB中,通过`plot`函数可以绘制曲线图。我们可以指定要绘制的曲线的x和y坐标,并可以设置其他参数,如线型、颜色等。 2.2. 绘制散点图 通过`scatter`函数可以绘制散点图。散点图用于展示数据的分布情况,非常直观。 2.3. 绘制柱状图 通过`bar`函数可以绘制柱状图。柱状图用于比较不同类别或不间点的数据。 3. MATLAB文件操作 在实际的程序设计过程中,常常需要读取和写入文件。MATLAB 提供了相关的文件操作函数,方便我们进行文件的读写操作。

Matlab实验三答案

Matlab实验三答案 实验三 MATLAB语言的程序设计 一、实验目的: 1、熟悉MATLAB程序编辑与设计环境 2、掌握各种编程语句语法规则及程序设计方法 3、函数文件的编写和设计 4、了解和熟悉跨空间变量传递和赋值 二、实验基本知识: 1、程序流程控制语句 for循环结构 语法:for i=初值:增量:终值 语句1 …… 语句n end 说明:1.i=初值:终值,则增量为1。 2.初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。 while 循环结构 语法:while 逻辑表达式 循环体语句 end 说明:1、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执行循环体语句一次、在反复执行时,每次都要进行判断。若表达式的值为假,则程序执行end之后的语句。 2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break语句、 以便程序能正常执行。(执行循环体的次数不确定;每一次执行循环体后,一定会改变while 后面所跟关系式的值。)

3、while循环也可以嵌套、其结构如下: while逻辑表达式1 循环体语句1 while逻辑表达式2 循环体语句2 end 循环体语句3 end if-else-end分支结构 if 表达式1 语句1 else if 表达式2(可选) 语句2 else(可选) 语句3 end end 说明:1.if结构是一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。 2.else if表达式2与else为可选项,这两条语句可依据具体情况取舍。 3.注意:每一个if都对应一个end,即有几个if,记就应有几个end。 switch-case结构 语法:switch表达式 case常量表达式1 语句组1 case常量表达式2 语句组2 ……

实验三 MATLAB程序设计

实验三MATLAB程序设计 一、实验目的 掌握几种基本流程控制语句进行设计的方法;了解程序优化和调试方法;熟悉利用向量运算来代替循环操作的方法,具备对较复杂问题的编程求解能力。 二、实验内容 1、使用脚本文件,画出下列分段函数所表示的曲线。 y={x+1,⋯⋯x<0 1⋯⋯⋯0≤x≤1 x3⋯⋯⋯1≤x 计算上述分段函数的值,要求能够根据用户对x值的不同输入,程序给出相对应的结果。 2、编写一个程序,能够接收用户从键盘输入的多个数值,只有当接收到输入的数值为-1时方可结束输入过程,然后求解并输出前面输入的所有数值之和以及它们的平均值。

3、求解鸡兔同笼问题:鸡和兔子关在一个笼子里,已知共有头36个,脚100个,求笼内关了多少只兔子和多少只鸡? 4、求2~999中同时满足下列条件的自然数: (1)该数各位数字之和为奇数 (2)该数是素数

5、编写程序求解如下问题并尝试调试运行:我国人口按2000年第五次全国人口普查的结果为12.9533亿,如果假定年增长率1.07%保持不变,请问多少年后我国总人口能够达到30亿?

6、编写阶乘函数,并调用该函数来生成一个1!,2!,…,10!的阶乘表,如下所示: 1 1 2 2 3 6 4 24 5 120 6 720 7 5040 8 40320 9 362880 10 3628800 7、编写一个求解指数函数e x的函数文件 提示:指数函数的幂级数展开为:e x≈1+x1 1!+x2 2! +x3 3! +⋯

8、输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。 要求:(1)分别用if和switch语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息

实验3:MATLAB编程基础

实验三MATLAB编程基础 【实验目的】 1、学习和掌握M文件的创建与使用; 2、学习和掌握MATLAB软件程序的控制结构与语句; 3、学习简单编程; 【实验内容、方法与步骤】 一、M文件 M文件有两种形式:命令文件和M函数文件。它们都是由若干MATLAE语句或命令组成的文件。两种文件的扩展名都是.m。要注意的是M文件名一定以字母开头,而且最好不要与内置函 数重名。 在M文件中,当表达式后面接分号时,表达式的计算结果虽不显示但中间结果仍保存在内存中。若程序为命令文件,则程序执行完以后,中间变量仍予以保留;若程序为函数文件,则程序执行完以后,中间变量被全部删除。 1、文件的操作 MATLAB对文件的打开、关闭和保存等操作与Word完全类似。在MATLAB^新建M文件的操 作是在命令窗口中选择,然后用鼠标单击M-File,可以打开MATLAB1带的“ M函数与M文件编 辑器”(见图2.4),用户可以在此编辑窗口来编辑一个新的M文件。MATLAB自带的“ M函数与M 文件编辑器”还可以用来对已经存在的M文件进行编辑、存储、修改和读取。 2、命令文件 命令文件的一般形式为:.m 如al.m, pp.m等都是合法的M文件名。 M文件有两种运行方式: 一是在命令窗口直接写文件名,按Enter键; 二是在编辑窗口打开菜单Debug,再单击Run。M文件保存的路径一定要在搜索路径上,否则M文件不能运行。 t t 【例1】用M命令文件画出衰减振荡曲线y e 3 sin3t及其它的包络线y e 3。t的取值范围 是[0,4 ]。 解:步骤: 1. 打开MATLAB^令窗口,单击-file 打开M文件编辑器窗口; 2. 在编辑窗口逐行写下列语句; t=0:pi/50:4*pi; y0=exp(-t/3); y=exp(-t/3).*si n(3*t);

相关主题
相关文档
最新文档