实验1Matlab基本操作M文件和流程控制语句+答案

合集下载

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

实验三_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 vectorm=n;endy = sum(x)/m;①函数定义行:function y = mean(x)function 为函数定义的关键字,mean 为函数名,y 为输出变量,x 为输入变量当函数具有多个输出变量时,则以方括号括起;当函数具有多个输入变量时,则直接用圆括号括起。

MATLAB实验指导书(附答案)

MATLAB实验指导书(附答案)

MATLAB基础实验指导书漳州师范学院物电系2010年10月目录实验一MATLAB环境的熟悉与基本运算 (2)实验二MATLAB数值运算 (8)实验三MATLAB语言的程序设计 (12)实验四MATLAB的图形绘制 (16)实验五采用SIMULINK的系统仿真 (20)实验六MATLAB在电路中的应用 (25)实验七MATLAB在信号与系统中的应用 (27)实验八MATLAB在控制理论中的应用 (29)实验一 MATLAB环境的熟悉与基本运算一、实验目的:1.熟悉MATLAB开发环境2.掌握矩阵、变量、表达式的各种基本运算二、实验基本知识:1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。

2.掌握MATLAB常用命令3.MATLAB变量与运算符变量命名规则如下:(1)变量名可以由英语字母、数字和下划线组成(2)变量名应以英文字母开头(3)长度不大于31个(4)区分大小写MATLAB中设置了一些特殊的变量与常量,列于下表。

MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符表2 MATLAB算术运算符表3 MATLAB关系运算符表4 MATLAB逻辑运算符表5 MATLAB特殊运算4.MATLAB的一维、二维数组的寻访表6 子数组访问与赋值常用的相关指令格式5.MATLAB的基本运算表7 两种运算指令形式和实质内涵的异同表6.MATLAB的常用函数表8 标准数组生成函数表9 数组操作函数三、实验内容1、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)2、学习使用clc、clear,观察command window、command history和workspace等窗口的变化结果。

3、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、exerc2、exerc3……),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。

(完整word版)含答案《MATLAB实用教程》

(完整word版)含答案《MATLAB实用教程》

第二章 MATLAB 语言及应用实验项目实验一 MATLAB 数值计算三、实验内容与步骤1.创建矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a(1(2)用(3)用(42.矩阵的运算(1)利用矩阵除法解线性方程组。

⎪⎪⎩⎪⎪⎨⎧=+++=-+-=+++=+-12224732258232432143214321421x x x x x x x x x x x x x x x 将方程表示为AX=B ,计算X=A\B 。

(2)利用矩阵的基本运算求解矩阵方程。

已知矩阵A 和B 满足关系式A -1BA=6A+BA ,计算矩阵B 。

其中⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=7/10004/10003/1A ,Ps: format rata=[1/3 0 0;0 1/4 0;0 0 1/7];b=inv(a)*inv(inv(a)-eye(3))*6*a(3)计算矩阵的特征值和特征向量。

已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=1104152021X ,计算其特征值和特征向量。

(4)Page:322利用数学函数进行矩阵运算。

已知传递函数G(s)=1/(2s+1),计算幅频特性Lw=-20lg(1)2(2w )和相频特性Fw=-arctan(2w),w 的范围为[0.01,10],按对数均匀分布。

3.多项式的运算(1)多项式的运算。

已知表达式G(x)=(x-4)(x+5)(x 2-6x+9),展开多项式形式,并计算当x 在[0,20]内变化时G(x)的值,计算出G(x)=0的根。

Page 324(2)多项式的拟合与插值。

将多项式G(x)=x 4-5x 3-17x 2+129x-180,当x 在[0,20]多项式的值上下加上随机数的偏差构成y1,对y1进行拟合。

对G(x)和y1分别进行插值,计算在5.5处的值。

Page 325 四、思考练习题1.使用logspace 函数创建0~4π的行向量,有20个元素,查看其元素分布情况。

Ps: logspace(log10(0),log10(4*pi),20) (2) sort(c,2) %顺序排列 3.1多项式1)f(x)=2x 2+3x+5x+8用向量表示该多项式,并计算f(10)值. 2)根据多项式的根[-0.5 -3+4i -3-4i]创建多项式。

MATLAB程序流程控制_习题答案

MATLAB程序流程控制_习题答案

第4章 MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。

A A.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以function开始2.下列程序的输出结果是()。

Dy=10;if y==10y=20;elseif y>0y=30enddisp(y)A.1 B.30 C.10 D.20 3.有以下语句:a=eye(5);for n=a(2:end,:)for循环的循环次数是()。

CA.3 B.4 C.5 D.10 4.设有程序段k=10;while kk=k-1end则下面描述中正确的是()。

AA.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次5.有以下程序段:x=reshape(1:12,3,4);m=0;n=0;for k=1:4if x(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。

CA.6 6 B.2 1 C.2 2 D.1 26.调用函数时,如果函数文件名与函数名不一致,则使用()。

A A.函数文件名 B.函数名C.函数文件名或函数名均可 D.@函数名7.如果有函数声明行为“function [x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是()。

BA.x=f1(a,b,c) B.[x,y,z,w]=f1(a,b,c)C.[x,b,z]=f1(a,y,c) D.[a,b]=f1(x,y,z)8.执行语句“fn=@(x) 10*x;”,则 fn是()。

AA.匿名函数 B.函数句柄 C.字符串 D.普通函数9.执行下列语句后,变量A的值是()。

D>> f=@(x,y) log(exp(x+y));>> A=f(22,3);A.22,3 B.22 C.3 D.2510.程序调试时用于设置断点的函数是()。

MATLAB程序设计M文件程序控制结构程序调试程序举例

MATLAB程序设计M文件程序控制结构程序调试程序举例
x=input('Please input x=:');
y=input('Please input y=:');
[rho,the]=tran(x,y);
rho
the MATLAB中,函数能够嵌套调用,即一种函数能够调用别旳函数, 甚至调用它本身。一种函数调用它本身称为函数旳递归调用。
例6 分别建立命令文件和函数文件,将华氏温度f转换为 摄氏温度c。
21.1111
x=
21.1111
(5). 函数文件旳其他有关概念
①局部变量和全局变量:
局部变量只存在于单个函数工作空间,全局变量 经过global定义,可穿行于不同函数工作空间, 涉及基本工作空间workspace。
函数文件旳内部变量是局部旳,与其他函数 及MATLAB内存相互隔离; 而假如在若干函数中把某一变量定义为全局 变量,那么这些函数将公用这个变量,全局 变量旳作用域是整个MATLAB旳工作区,即 全程有效,全部函数都能够对其存取和修改。
if (nargin == 1) tol = max(size(x)) * max(s) * eps;
程序部分
end
r = sum(s > tol);
(2)命令m文件建立及其运营
建立 涉及下列环节: 进入m文件编辑器 输入程序 定义文件名,保存程序
命令M文件旳运营方式: 直接在命令窗口输入该文件旳文件名 在m文件编辑器中打开该文件后点击工具条中
② M文件模式
将matlab语句构成旳程序存储成以m为扩展名 旳文件,然后再执行该程序文件,这种工作模式 称为程序文件模式。
程序文件不能在命令窗口下建立,因为命令窗口 只允许一次执行一行上旳一种或几种语句。

实验1 Matlab基本操作、M文件和流程控制语句

实验1 Matlab基本操作、M文件和流程控制语句

实验1 Matlab 基本操作、M 文件和流程控制语句一、实验目的1、熟悉Matlab 的开发环境、熟悉Matlab 中的运算符。

2、掌握建立矩阵的方法,掌握相关命令操作。

3、理解命令M 文件和函数M 文件的区别。

掌握M 文件的创建和运行。

4、掌握流程控制语句的使用,掌握程序调试的基本方法。

二、实验内容1、计算以下表达式的值,将结果按不同格式输出。

掌握format 命令的使用方法。

(1)26)3sin(3.13π=y (2))1ln(212x x y ++=,其中⎥⎦⎤⎢⎣⎡-+=545.0212i x (3)23.0ln )3.0sin(23.03.0x x e e y x x +++-=-,其中0.3,9.2,8.2,,8.2,9.2,0.3 ---=x 2、已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=72330213176538773443412B A , 求下列表达式的值:(1) A+6*B 和A-B+I(2) A*B 和A.*B(3) A^3和A.^3(4) A/B 和B\A(5) [A,B]和[A([1,3],:);B^2]3、已知)20()30()40(f f f y +=, (1)当)5ln(10)(2++=n n n f 时,求y 的值。

(2)当)1(*4*33*22*1)(+++++=n n n f 时,求y 的值。

4、请分别用if 和switch 语句实现。

输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。

其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。

5、已知⎪⎪⎩⎪⎪⎨⎧>+-=======---3,23,12,01,1321321n f f f f n f n f n f n n n n 求1001~f f 中:(1) 这100个数中的最大值,最小值,这100个数的总和。

《分析软件工具(MATLAB)》实验答案

《分析软件工具(MATLAB)》实验答案

实验一(2学时):MATLAB软件集成环境使用,基本操作命令练习题1 利用基本矩阵产生3x3和15x8的单位阵,全1阵,全0阵,均匀分布的随机阵([-1,1]之间),正态分布随机阵(方差4,均值1)。

eye(3)ones(3), ones(15,8)zeros(3), zeros(15,8)-1+2*rand(3), -1+2*rand(15,8)1+2*randn(3), 1+2*randn(15,8)题2 有一矩阵a,找出矩阵中其值大于1的元素,并将他们重新排列成列向量b。

a=[1 2 1;3 1 1;4 -2 7]b=a(find(a>1))基本要求:熟悉MATLAB环境和常用命令,掌握MATLAB矩阵操作实验二(2学时):MATLAB软件绘图功能题1 试写一函数 regPolygon(n),其功能为画出一个圆心在 (0, 0)、半径为 1 的圆,并在圆内画出一个内接正 n 边形,其中一顶点位于 (0, 1)。

function regPolygon(n)t=0:pi/20:2*pi;x=sin(t);y=cos(t);plot(x,y);hold on;t=linspace(0,2*pi,n+1);x=sin(t);y=cos(t);plot(x,y);axis square;题2 请用 surf 指令来画出下列函数的曲面图:z = x*exp(-x2-y2),其中 x 在 [-2, 2] 间共等切分为 21 点,y 在 [-1, 1] 间共等切分为 21 点,所以此曲面共有 21*21=441 个点。

a. 请用预设的颜色对应表(Colormap)来画出此曲面。

b. 请以曲面的斜率来设定曲面的颜色。

c. 请以曲面的曲率来设定曲面的颜色。

基本要求:能够利用MATLAB函数绘制二维图形x=linspace(-2,2,21);y=linspace(-1,1,21);[X,Y]=meshgrid(x,y);Z=X.*exp(-X.*X-Y.*Y)subplot(2,2,1)surf(X,Y,Z)axis tightcolormap(hot)subplot(2,2,2)surf(X,Y,Z,gradient(Z))axis tightcolormap(hot)subplot(2,2,3)surf(X,Y,Z,del2(Z))axis tightcolormap(hot)实验三(2学时):MATLAB程序设计题1 写一个 MATLAB 小程序 findN01.m,求出最小的 n 值,使得 n! > realmax。

MATLAB蓝色答案

MATLAB蓝色答案

实验一 MATLAB 软件使用初步一、 实验目的∙ 学习MATLAB 软件的安装过程,熟悉MA TLAB 软件界面的组成及基本使用方法。

∙ 理解数组(Array )的分类,及标量(scalar )、矢量(vector )和矩阵(Matrix )的区别,熟悉数组与矩阵的构造方法,掌握数组与矩阵的基本运算法则。

二、 实验要求1、 掌握MATLAB 软件的启动与退出的方法。

2、 掌握MATLAB 软件的桌面环境。

3、 掌握MATLAB 软件的基本使用方法。

4、 掌握M 文件编辑器的使用。

5、 学会使用MATLAB 的帮助系统。

6、 掌握标量、矢量和矩阵的构造方法。

7、 掌握数组的四则运算。

8、 掌握矩阵的四则运算。

9、 掌握基本的数据输入和输出函数。

三、 实验内容图1 MATLAB 桌面环境1.浏览各个菜单项的内容,试着改变各个窗口的字体与字号。

2.熟悉matlab 中的特殊变量:i 、j 、pi 、ans 等等。

3.在实验报告中回答下面哪些赋值语句是正确的,如果不正确给出理由。

a=1 对a20=1.2; 对,只是无answer ,它是一条语句。

年薪=100000 错,定义变量不对。

输入字符不是 MATLAB 语句或表达式中的有效字符。

_fee=20.0 错,变量不能有下划线。

输入字符不是 MATLAB 语句或表达式中的有效字符。

coordinate.x=1 对赋值结尾为“;” 则不显示结果。

一行不够时,可用“…”换行4.已知1u =,3v =,用MA TLAB 分别执行下列语句。

并在实验报告中记录语句和结果。

a. 43u vb. ()222v u v -+ c. 333v v u - d.243v π >>u=1>>v=3a. 4*u/(3*v)b.5. 运行以下命令并将运行结果与工作空间浏览器中的状态进行比较。

>> a=sin(pi); b=[1, 2]; c=[1; 2]; >> who >> whos 在实验报告中回答:如下运行结果中,Size 下的1x1、1x2、2x1的含义>> whosName Size Bytes Classa 1x1 8 double arrayb 1x2 16 double arrayc 2x1 16 double array6.通过工作目录浏览器(Current Directory Browser )或者“File”菜单中相应菜单项改变当前工作 目录。

MATLAB实验报告

MATLAB实验报告

MATLAB 实验报告学院:班级:姓名:学号:实验一M-文件结构编写与调用一、实验目的在学习MATLAB的过程中,M文件的编写至关重要,因此,我们学习这门课程,必须熟悉的掌握Matlab文件类型及其编写方法、程序结构的编写,并且从程序编写的步骤中深刻的了解流程控制方法,函数文件的编写与综合应用。

二、实验题目及要求建立m文件,求,在xoy平面内选择一个区域,然后绘制其三维表面图形。

三、实验过程与步骤(1)设计思路a、首先我们从实验题目及要求中可以了解到需要回执一个三维表面图形,那就应该准备横坐标与纵坐标的数据,这样就可以产生一个X轴为-4,中止于4,步距为2,Y轴起始于-2,中止于2,步距为1的网格分割。

b、指定图形的窗口和子图的位置。

也就是说,我们可以使用Figure命令指定图形窗口,默认时打开Figure1窗口,或者可以使用subplot命令指定当前子图。

c、绘制相应的曲线。

当坐标轴的数据设置以后,即可绘制曲线。

d、后期修饰。

当曲线绘制完毕以后,为了整体的布局美观,需要加注一些坐标轴刻度、分格线的设置;图名、坐标名、图例、文字说明等一些的图形注释,从而美化图形。

(2)指令输入根据题目所示,我们需要在Matlab中输入如下指令,界面如图所示:三、实验结果(1)当上述指令输入进去后,得到如下图所示的曲线图:(2)当进行属性设置以后,我们可以获得更美观的三维表面图形,界面如下图所示:实验二 Guide的使用入门一、实验目的GUI开发环境是MATLAB R2010a为设计图形用户界面提供的一个集成设计和开发环境,此实验为了了解更多关于GUI界面的知识,以便我们能使用更加丰富的图形设计工具,创建更丰富的图形用户界面,实现友好地人机交互。

二、实验题目及要求利用GUI界面算出两个数相加而得到相应的数据结果三、实验过程及步骤(1)、首先打开MATALAB,然后选择“File”中的“GUI”,从而可以创建一个空白页面。

第4章 MATLAB程序流程控制_习题答案

第4章  MATLAB程序流程控制_习题答案

第4章 MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。

AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以function开始2.下列程序的输出结果是()。

Dy=10;if y==10y=20;elseif y>0y=30enddisp(y)A.1 B.30 C.10 D.203.有以下语句:a=eye(5);for n=a(2:end,:)for循环的循环次数是()。

CA.3 B.4 C.5 D.104.设有程序段k=10;while kk=k-1end则下面描述中正确的是()。

AA.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次5.有以下程序段:x=reshape(1:12,3,4);m=0;n=0;for k=1:4if x(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。

CA.6 6 B.2 1 C.2 2 D.1 26.调用函数时,如果函数文件名与函数名不一致,则使用()。

A A.函数文件名B.函数名C.函数文件名或函数名均可D.@函数名7.如果有函数声明行为“function [x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是()。

BA.x=f1(a,b,c) B.[x,y,z,w]=f1(a,b,c)C.[x,b,z]=f1(a,y,c) D.[a,b]=f1(x,y,z)8.执行语句“fn=@(x) 10*x;”,则fn是()。

AA.匿名函数B.函数句柄C.字符串D.普通函数9.执行下列语句后,变量A的值是()。

D>> f=@(x,y) log(exp(x+y));>> A=f(22,3);A.22,3B.22 C.3 D.2510.程序调试时用于设置断点的函数是()。

MATLAB 实验教程

MATLAB 实验教程

实验一 MATLAB基本操作一、实验目的:1)熟悉MATLAB软件的运行环境和基本操作2)掌握MATLAB矩阵的输入方式、元素的提取与组合3)掌握数值运算。

二、实验内容:1)启动MATLAB软件,观察其界面组成及操作方法,了解各部分的功能2)使用基本的MATLAB命令,并观察记录执行结果帮助、查询信息类命令:Demo、help、who、whos显示、记录格式等命令:clc、clear、format尝试一下其他的命令(dos命令)3)生成一个5阶魔方矩阵,并提取其第(3、4、5)行,第(2、3、4)列构成的新的矩阵MATLAB提供了专门生成魔方矩阵的函数——magic。

magic函数的使用方法是:M = magic(n)生成一个n*n的矩阵,矩阵元素是由整数1到n^2组成的并且任何行任何列的和都相等,阶数n必须是大于等于3的标量MATLAB通过确认下标,可以对矩阵进行插入子块、提取子块和重排子块的操作。

为了提取矩阵a的第n行、第m列的元素值,使用a(n,m)可以得到。

同样,将矩阵a的第n行、第m裂地元素赋值为r,使用a(n,m)=r命令。

利用矩阵下标,MATLAB还提供了子矩阵功能。

同样是上面的a(n,m),如果n和m是向量,而不是标量,则将获得指定矩阵的子块。

根据以上内容,在命令行中的“>>”后输入“a=magic(5)”和“a(3:5,2:4)”:>> a=magic(5)a =17 24 1 8 1523 5 7 14 164 6 13 20 2210 12 19 21 311 18 25 2 9>> a(3:5,2:4)ans =6 13 2012 19 2118 25 24)利用元素提取功能验证上一步产生的魔方矩阵(各行、各列、对角线元素和相等)。

利用上题所述的矩阵下标,提取各行、各列、对角线元素然后相加即可验证,但还有一个更为简单的方法,即MATLAB提供的的sum函数。

实验2 M文件和流程控制语句[参考答案]

实验2 M文件和流程控制语句[参考答案]

实验2 M 文件和流程控制语句参考答案1、 编写一个函数文件fun.m ,用于求∑==101n n n a ,然后在命令文件中给定a 的值,调用函数fun 。

建立函数M 文件fun.mfunction s=fun(a)s=0; for i=1:10s=s+a^n;endMATLAB 命令:>> a=3;>> s=fun(a)2、 编写一个函数文件,求小于任意自然数n 的斐波那契数列各项。

Fibnacci 数列定义如下:⎪⎩⎪⎨⎧>+===--2,112121n f f f f f n n n建立函数M 文件fib.mfunction f=fib(n)if n==1f=1;endif n==2f(1)=1;f(2)=2;endif(n>2)f(1)=1;f(2)=2;for i=3:nf(i)=f(i-1)+f(i-2);endend3、 编制一个解数论问题的函数文件:取任意整数,若是偶数,则除以2,否则乘3加1,重复此过程,直到整数变为1。

建立函数M 文件collatz.mfunction c=collatz(n)% collatz% Classic “3n+1” Ploblem from number theoryc=n;while n>1if rem(n,2)==0 %返回n/2的余数n=n/2;elsen=3*n+1;endc=[c n];end4、编写一个函数M文件([y1,y2]=fun(x1,x2)),使之可以处理1个或两个输入参数,一个或两个输出参数,满足如下条件:当只有一个输入参数x1时:如果只有一个输出参数y1,则y1=x1;如果有两个输出参数y1,y2,则y1=y2=x1/2;当有两个输入参数x1,x2时:如果只有一个输出参数y1,则y1=x1+x2;如果有两个输出参数y1,y2,则y1=y2=(x1+x2)/2; 建立函数M文件fun.mfunction [y1,y2]=fun(x1,x2)if nargin=1&nargout=1y1=x1;elseif nargin=1&nargout=2y1=x1/2;y2=y1;elseif nargin=2&nargout=1y1=x1+x2;elseif nargin=2&nargout=2y1=(x1+x2)/2;y2=y1;end5、A=rand(3,4)<0.7, 编程实现查找矩阵A的每行中第一个0元素所在的列。

(完整版)第4章MATLAB程序流程控制_习题答案

(完整版)第4章MATLAB程序流程控制_习题答案

第4章 MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。

AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以function开始2.下列程序的输出结果是()。

Dy=10;if y==10y=20;elseif y>0y=30enddisp(y)A.1 B.30 C.10 D.203.有以下语句:a=eye(5);for n=a(2:end,:)for循环的循环次数是()。

CA.3 B.4 C.5 D.104.设有程序段k=10;while kk=k-1end则下面描述中正确的是()。

AA.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次5.有以下程序段:x=reshape(1:12,3,4);m=0;n=0;for k=1:4if x(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。

CA.6 6 B.2 1 C.2 2 D.1 26.调用函数时,如果函数文件名与函数名不一致,则使用()。

A A.函数文件名B.函数名C.函数文件名或函数名均可D.@函数名7.如果有函数声明行为“function [x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是()。

BA.x=f1(a,b,c) B.[x,y,z,w]=f1(a,b,c)C.[x,b,z]=f1(a,y,c) D.[a,b]=f1(x,y,z)8.执行语句“fn=@(x) 10*x;”,则fn是()。

AA.匿名函数B.函数句柄C.字符串D.普通函数9.执行下列语句后,变量A的值是()。

D>> f=@(x,y) log(exp(x+y));>> A=f(22,3);A.22,3B.22 C.3 D.2510.程序调试时用于设置断点的函数是()。

实验一Matlab运算基础

实验一Matlab运算基础

利用不同的方法对 =z
x2 − y2 16 9
在(-3,3)上的二维插值效果
进行比较。
三、实验总结
结合平时生活、学习经验,体会本次实验各种 方法的用处和重要性。
实验六 Matlab的基本应用3: 常微分方程求解
一、实验目的
1、学会用Matlab进行常微分方程的求解、 随机试验和统计作图
2、掌握相关数据分析函数库的内容
quit或exit
关闭/推出MATALB
二、实验内容
矩阵创建
直接输入 用语句生成 矩阵连接 创建矩阵函数 矩阵操作 复数
矩阵运算 元素群运算
P86, 4.1,4.2, 4.3,4.10
三、实验分析
1 2 3
4 6 8
矩阵A= 4 5 6 ,B= 5 5 6
7 8 9
3 2 2
(1)计算A*B, A.*B, 并比较两者的区别? (2)expm,sqrtm,logm与exp,sqrt,log的区别?
二、实验内容
(1)已知矩阵A=
5 9
2 1
,B=
1 9
2 2

做简单的关系运算A>B, A==B, A<B, 并做逻辑 运算(A==B)&(A<B), (A==B)&(A>B)。
(2)编写程序(分别用for 和while),实现:
用公式 π =1− 1 + 1 − 1 +…… 求π 的近似值,
4 357
直到某一项的绝对值小于10-6 为止。
三、实验分析与总结
对流程控制语句和结构进行分析和总结。
实验三 Matlab绘图
一、实验目的
1、了解并掌握matlab的基本绘图

Matlab基础及应用实验指导书

Matlab基础及应用实验指导书

Matlab 基础及应用实验指导书实验一Matlab的基本操作实验目的:掌握Matlab的基本操作方法实验内容:1、使用变量与基本运算;2、向量与矩阵的处理;3、程序流程控制;4、M 文件编辑。

参照教材相关内容向量生成:x=linspace(0,2*pi);y=sin(x);plot(x,y)plot(x,sin(x),'o',x,cos(x),'x',x,sin(x)+cos(x),'*');数据导入1.菜单File—Import—Data,支持Excel、txt等;2.在Workspace窗口中双击数据表名,在Array Editor中将数据复制进去即可。

绘图1将数据表的各列数值分别赋予变量x、y、z等,格式如下:x=sheetname(:,1), y=sheetname(:,2), z=sheetname(:,3);2用命令plot(x,y,’XXXX’)绘制图形,单引号中的符号表示点线的属性,如线形、颜色、点的形状等,若用双对数坐标画图则命令为loglog(x,y);3在弹出的绘图界面中用菜单View—Property Editor编辑图形属性,如字体大小、数据点形状、横纵坐标名称、绘图区域颜色等;4绘图方法2:在数组编辑器上点击Plot Selection按钮,选择图形的类型即可;5绘图方法3:菜单File—New—Figure创建新的图形,在图形编辑器中Figure Palette面板点击2D Axes,点击右下角Add Data选择图表类型和坐标轴的数据源,度分布图将坐标轴由线形改为对数即可。

6hold on/off命令:叠绘命令,切换绘图的保持功能;7绘制双纵轴:7.1plotyy(x1,y1,x2,y2):分别用左/右侧y轴表示两条曲线;7.2plotyy(x1,y1,x2,y2,FUN):FUN是字符串格式,用来指定绘图的函数名,可以由多个。

MATLAB全部实验及答案

MATLAB全部实验及答案
2)A*B和A.*B
3)A^3和A.^3
4)[A,B]和[A([1,3],:);B^2]
2、设有矩阵A和B,A=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25],B=[3 0 16;17 -6 9;0 23 -4;9 7 0;4 13 11]
使用Windows的“开始”菜单。
运行MATLAB系统的启动程序matlab.exe。
利用桌面上的快捷方式。
MATLAB主窗口
命令窗口(Command Window)
当前目录窗口(Current Directory)
工作空间窗口(Workspace)
命令历史窗口(Command History)
2、下列符号中哪些是MATLAB的合法变量名?用给变量赋值的方法在机器上验证你的答案(3vars、global、help、My_exp、sin、X+Y、_input、E-4、AbCd、AB_C_。)
6、利用MATLAB提供的rand函数和圆整函数随机生成4X3整数矩阵A,进行如下操作
1)A各列元素的平均值和中值
平均值
>> A_mean=mean(A)
A_mean =
0.5000 0.7500 0.7500
中值
>> A_median=median(A)
A_median =
0.5000 1.0000 1.0000
整数类型的运算函数
创建逻辑类型数据的函数
MATLAB的逻辑运算
MATLAB的关系运算
格式化字符
三、主要仪器及耗材
计算机
四、实验内容和步骤
1、已知A=[12 34 -4;34 7 87;3 65 7],B=[1 3 -1;2 0 3;3 -2 7],求下列表达式的值:

matlab流程控制语句

matlab流程控制语句

matlab流程控制语句下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor.I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!MATLAB流程控制语句:理解与应用MATLAB,作为一款强大的数值计算和数据可视化工具,其编程语言包含了丰富的流程控制语句。

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

实验1 Matlab基本操作、M文件和流程控制语句-答案1、计算以下表达式的值,将结果按不同格式输出。

掌握format命令的使用方法。

(1)(2),其中(3),其中以(1)为例,其余类似。

(1)>> y=1.3^3*sin(pi/3)*sqrt(26)y =9.7017>> format long>> y=1.3^3*sin(pi/3)*sqrt(26)y =9.70168931166114>> format short e>> y=1.3^3*sin(pi/3)*sqrt(26)y =9.7017e+000>> format bank>> y=1.3^3*sin(pi/3)*sqrt(26)y =9.70>> format rat>> y=1.3^3*sin(pi/3)*sqrt(26)y =2862/295(2)>> format short>> x=[2 1+2*i;-0.45 5]x =2.0000 1.0000 + 2.0000i-0.4500 5.0000>> y=(1/2)*log(x+sqrt(1+x^2))y =0.7114 - 0.0253i 0.8968 + 0.3658i0.2139 + 0.9343i 1.1541 - 0.0044i(3)>> format short>> x=-3:0.1:3;>> y=((exp(0.3*x)-exp(-0.3*x))/2).*sin(x+0.3)+log((0.3+x)/2)2、已知:求下列表达式的值:A+6*B和A-B+IA*B和A.*BA^3和A.^3A/B和B\A[A,B]和[A([1,3],:);B^2]>> A=[12 34 -4;34 7 87;3 65 7];>> B=[1 3 -1;2 0 3;3 -2 7];>> A+6*Bans =18 52 -1046 7 10521 53 49>> A-B+eye(3)ans =12 31 -332 8 840 67 1>> A*Bans =68 44 62309 -72 596154 -5 241>> A.*Bans =12 102 468 0 2619 -130 49>> A^3ans =37226 233824 48604247370 149188 60076678688 454142 118820 >> A.^3ans =1728 39304 -6439304 343 65850327 274625 343 >> A/Bans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000>> B\Aans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000>> [A,B]ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7>> [A([1,3],:);B^2]ans =12 34 -43 65 74 5 111 0 1920 -5 403、已知,(1)当时,求y的值。

(2)当时,求y的值。

(1)先创建文件函数:f.mfunction f=f(n)f=n+10*log(n^2+5);然后在主窗口调用:>>y= f(40)/(f(30)+f(20))y =0.6390(2)先创建文件函数:f.mfunction f=f(n)f=0;for i=1:nf=f+i*(i+1);end或用while语句创建函数:function f=f(n)f=0;while n>=1f=f+n*(n+1);n=n-1;end然后在主窗口调用:>> y=f(40)/(f(30)+f(20))y =1.76624、请分别用if和switch语句实现。

输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。

其中90分~100分为A,80分~89分为B,70分~79分为C,60分~69分为D,60分以下为E。

n=input('please enter a scores:');if n>=90disp('A')elseif n>=80disp('B')elseif n>=70disp('C')elseif n>=60disp('D')elsedisp('E')end用switch语句:n=input('please enter a scores:');m=fix(n/10)switch mcase 10disp('A')case 9disp('A')case 8disp('B')case 7disp('C')case 6disp('D')otherwisedisp('E')end5、已知求中:这20个数中的最大值,最小值,这20个数的总和。

统计正数、零、负数的个数。

显示的值。

f1=1;f2=0;f3=1;max=1;min=0;n=4;positive=2;negative=0;zero=1;sum=2;s=[1 0 1];while n<=20f=f3-2*f2+f1;sum=sum+f;if f>maxmax=f;elseif f<minmin=f;endif f>0positive=positive+1;elseif f<0negative=negative+1;elsezero=zero+1;ends=[s f];f1=f2;f2=f3;f3=f;n=n+1;endfprintf('the max value=%f\nthe min value=%f\n',max,min); fprintf('the sum=%f\n',sum);fprintf('the number of positive:%f\n',positive);fprintf('the number of negative:%f\n',negative);fprintf('the number of zero:%f\n',zero);f=s或:f1=1;f2=0;f3=1;max=1;min=0;n=4;positive=2;negative=0;zero=1;sum=2;g(1)=1;g(2)=0;g(3)=1;while n<=20f=f3-2*f2+f1;g(n)=fsum=sum+f;if f>maxmax=f;elseif f<minmin=f;endif f>0positive=positive+1;elseif f<0negative=negative+1;elsezero=zero+1;endf1=f2;f2=f3;f3=f;n=n+1;endfprintf('the max value=%f\nthe min value=%f\n',max,min);fprintf('the sum=%f\n',sum);fprintf('the number of positive:%f\n',positive);fprintf('the number of negative:%f\n',negative);fprintf('the number of zero:%f\n',zero);f=g结果:the max value=65.000000the min value=-115.000000the sum=-135.000000the number of positive:9.000000the number of negative:9.000000the number of zero:2.000000f =Columns 1 through 101 0 12 0 -3 -1 54 -7Columns 11 through 20-10 8 21 -5 -39 -8 65 42 -96 -1156、编写一个函数文件,输入3个参数,前2个为矩阵,第3个是数字0或1,如果是0,则计算矩阵乘积A*B,否则计算A.*B。

function C=f(A,B)A=input('Enter matrix A:');B=input('Enter matrix B:');k=input('Enter 0 or 1 please:');C=zeros(size(A,1),size(A,2));%此行语句可略掉if k==0if size(A,2)==size(B,1)C=A*B;elsedisp('A与B无法相乘')endelseif size(A)==size(B)for i=1:size(A,1) %返回A的行数for j=1:size(A,2) %返回A的列数C(i,j)=A(i,j)*B(i,j);endendelsedisp('只有同型矩阵才能点乘') end。

相关文档
最新文档