D实验五 M文件和MATLAB程序设计

合集下载

MATLAB程序设计及应用(第二版)课后实验答案

MATLAB程序设计及应用(第二版)课后实验答案

Matlab课后实验题答案实验一 MATLAB运算基础1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。

(1)0 122sin851ze =+(2)21ln( 2z x=+,其中2120.455i x+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.52. 已知:1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:(1) A+6*B 和A-B+I (其中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. 设有矩阵A 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。

(2) 将矩阵C 的右下角3×2子矩阵赋给D 。

(3) 查看MATLAB 工作空间的使用情况。

4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。

(2) 建立一个字符串向量,删除其中的大写字母。

解:(1) 结果:(2). 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。

MATLAB实验及程序

MATLAB实验及程序

实验一a=[1,2,3;4,5,6;7,8,9] b= repmat(a,2,2)B(24)=9实验二1、使用matlab命令统计randn(5)生成的矩阵里,有多少个元素小于0,将小于0元素个数存变量c中并将这些小于零元素存变量d中。

(实验报告要求:写出命令)a=randn(5)b=find(a<0);c=length(find(a<0))d=a(b)2、建立一个字符数组,内容如下所示:(实验报告要求:写出命令)A B C DE F G Ha b c da=['A B C D''E F G H''a b c d']3、已知有一个矩阵A(假如不知道其具体信息),请计算其元素个数(请先用实际矩阵来验证计算方法是否正确)。

(实验报告要求:写出正确计算方法的命令)A=randn(3,4)B=numel(A)4、已知有一个元胞数组B=[{ones(2,3,2)},{'Hello, Matlab'};{[4 5 6]},{1:100}],想获取字符串'Matlab',应输入什么命令?(实验报告要求:写出命令)f=B{1,2}(7:end)5、要从上题所建元胞数组B中获取列向量[4;5;6],可以有哪几种方法?(实验报告要求:写出命令及结果)方法1: i=B{2,1}(:)方法2: j=reshape(B{2,1},3,1)6、已知有两个学生的信息如下,请在matlab中创建结构对其进行存储,并算=['姓名''张三''李四']student.shuxue=[8778]student.yuwen=[7581 ]student.yingyu=[5560]实验三实验四:二维绘图(1)在同一个窗体(figure1)中画出正弦函数和余弦函数的图象。

要求如下:◆正弦图象用蓝色实线,时标用方格;◆余弦图象用黄色虚线,时标选向下三角形;◆为整个图像加中文标题;◆为x和y轴加轴标题;◆改x轴的单位为pi/2的倍数;◆增加图例;◆在图中合适的位置增加“正弦曲线”和“余弦曲线”两处文本信息。

实验五 M文件及程序设计

实验五 M文件及程序设计

一、实验目的1.练习函数的定义和书写及调用2.练习M文件下书写代码二、实验设备装有MATLAB的计算机。

三、实验内容1,分别编写命令(M)文件和函数(function)文件,在命令文件中可循环输入学生成绩,在函数文件判断成绩所属等级。

统计各分段的人数,并将各人的成绩按优、良、中、及格和不及格表示。

2.猜数游戏。

首先由计算机产生一个[1,100]之间的随机整数,然后由用户猜测所产生的随机数。

根据用户猜测的情况给出不同提示,如猜测的数大于产生的数,则显示“High”并请用户继续猜测,小于则显示“Low”并请用户继续猜测,等于则显示“You won”同时退出游戏。

用户最多可以猜7次。

如果第七次还未猜对,则显示“You fail!"并退出游戏。

四、实验步骤和结果1. 代码结果:输入正数开始5请输入学生成绩x=89请输入学生姓名l请输入学生成绩x=78请输入学生姓名h请输入学生成绩x=45请输入学生姓名k请输入学生成绩x=-1ans =优秀的人数0ans =良好的人数1ans =中等的人数1ans =及格的人数0ans =不及格的人数1姓名成绩等级l 89 良好h 78 中等k 45 不及格2.代码五、总结1.实验练习了函数的创建和使用,并且在M的文件中调用函数。

2.复习了单元数组和结构数组的知识。

3. 使用了字符串比较函数,在M文件中对各个等级的人数进行了统计。

4.猜数游戏中开始的代码,当第七次猜对后会输出”You Fail”,后对代码进行了改进。

MATLAB实验

MATLAB实验

MATLAB实验一:MATLAB语言基本概念实验实验目的:1. 熟悉MATLAB语言及使用环境;2.掌握MATLAB的常用命令;3.掌握MATLAB的工作空间的使用;4.掌握MATLAB的获得帮助的途径。

5.掌握科学计算的有关方法,熟悉MATLAB语言及其在科学计算中的运用;6.掌握MATLAB的命令运行方式和M文件运行方式;7.掌握矩阵在MATLAB中的运用。

实验方案分析及设计:本次实验主要目的是了解MATLAB的使用环境,以及常用的一些命令的使用;了解矩阵在MATLAB实验中的具体运用,以及相关的一些符号命令的使用。

实验器材:电脑一台,MATLAB软件实验步骤:打开MATLAB程序,将实验内容中的题目依次输入MATLAB中,运行得到并记录结果,最后再对所得结果进行验证。

实验内容及要求:1.熟悉MATLAB的菜单和快捷键的功能2.熟悉MATLAB的命令窗口的使用3.熟悉常用指令的使用format clc clear help lookfor who whos 4.熟悉命令历史窗口的使用5. 熟悉MATLAB工作空间的功能将工作空间中的变量保存为M文件,并提取该文件中的变量6.熟悉MATLAB获取帮助的途径将所有plot开头的函数列出来,并详细给出plotfis函数的使用方法1. 输入 A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2;3 3 3],在命令窗口中执行下列表达式,掌握其含义:A(2, 3) A(:,2) A(3,:) A(:,1:2:3)A(:,3).*B(:,2) A(:,3)*B(2,:) A*BA.*BA^2 A.^2 B/A B./AA=[7 1 5;2 5 6;3 1 5]7 1 52 5 63 1 5>> B=[1 1 1; 2 2 2;3 3 3]1 1 12 2 23 3 3>> A(2, 3)6>> A(:,2)151>> A(3,:)3 1 5>> A(:,1:2:3)7 52 63 5>> A(:,3).*B(:,2)51215>> A(:,3)*B(2,:)10 10 1012 12 1210 10 10>> A*B24 24 2430 30 3020 20 20>> A.*B7 1 54 10 129 3 15>> A^266 17 6642 33 7038 13 46>> A.^249 1 254 25 369 1 25>> B/A0.1842 0.2105 -0.23680.3684 0.4211 -0.47370.5526 0.6316 -0.7105>> B./A0.1429 1.0000 0.20001.0000 0.4000 0.33331.0000 3.0000 0.60002.输入 C=1:2:20,则 C (i )表示什么?其中 i=1,2,3, (10)1到19差为2,i 代表公差3. 试用 help 命令理解下面程序各指令的含义:cleart =0:0.001:2*pi;subplot(2,2,1);polar(t, 1+cos(t))subplot(2,2,2);plot(cos(t).^3,sin(t).^3)subplot(2,2,3);polar(t,abs(sin(t).*cos(t)))subplot(2,2,4);polar(t,(cos(2*t)).^0.5)4计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡638976242之和。

MATLAB基础及程序设计

MATLAB基础及程序设计

一、变量和数值
➢Matlab的变量有一定的命名规则: (1)变量名区分大小写。’A’与’a’是不同的变量。 (2)变量名不能超过63个字符。 (3)变量名必须以字母开头。 (4)关键字(如if,while等)不能作为变量名。 (5)有一些系统自动定义的特殊变量,如pi,inf,i等。
➢特殊变量 ans: 用于结果的缺省变量名 pi: 圆周率 eps:计算机的最小数 inf:无穷大
>>syms a b c x f2=a*x^2+b*x+c 上面的语句即创建了符号变量a,b,c,x,又创建了符号表达 式,f1,f2符号表达式相同。
二、符号表达式的代数运算: 特点: 1、传统的数值运算由于计算机的有效位数的 限制,会产生误差。符号运算则可以避免。
2、符号运算可以得出完全的封闭解或任意精 度的数值解。
六、代数方程组的求解
[例] x1+x2=5 2x1+x2=7 x1+2x3=4
求解x1,x2。 a=[1 1 0;2 1 0;1 0 2];b=[1;5;5]; x=a\b x=
2 3
七、多项式拟合 多项式拟合是用一个多项式来逼近一组给定的 数据,在数据分析上是常用的方法,使用polyfit 函数来实现.拟合的准则是最小二乘法。 [例] x0=0:0.1:1;
2、用MATLAB函数创建 + rand —— 随机矩阵 >>rand(m,n)
+eye —— 单位矩阵 >>eye(m,n)
+zeros ——全部元素都为0 的矩阵
+>>zeros(m,n) +ones ——全部元素都为1的 矩阵
+ >>ones(m,n)

MATLAB程序设计实验指导书

MATLAB程序设计实验指导书

MATLAB程序设计实验指导书MATLAB是集数值计算、符号运算及图形处理等强大功能于一体的科学计算语言。

作为强大的科学计算平台,它几乎能满足所有的计算需求。

在美国及其他发达国家的理工科院校里,MATLAB已经作为一门必修的课程;在科研院所、大型公司或企业的工程计算部门,MATLAB也是最普遍的计算工具之一。

有鉴于此,我院开设了《MATLAB程序设计》这门课程,它需要一定的理论基础,同时又具有很强的实践性。

如何加强理论课程的学习、加深学生对本课程中的基本理论知识及基本方法的理解,如何培养学生实践动手能力是教学的当务之急。

而MATLAB程序设计实验课程就是一种重要的教学手段和途径。

实验将MATLAB程序设计的基本方法灵活地运用在数学、电路等课程中,重点突出,内容丰富。

同时,注重理论分析与实际动手相结合,以理论指导实践,以实践验证基本原理,旨在提高学生分析问题、解决问题的能力及动手能力,使学生进一步巩固基本理论知识,建立比较全面的MATLAB程序设计的概念。

实验注意事项1、实验系统接通电源前请确保电源插座接地良好。

2、完成实验后请确保关闭电脑电源及插座电源。

实验一 矩阵及其运算一、实验目的1、熟悉MATLAB 工作环境2、掌握矩阵和数组的创建、寻访和运算 二、实验内容验证欧姆定律:iur ,其中i u r , ,分别是电阻(欧姆)、电压(伏特)、电流(安培)。

已知u=[0.89, 1.20, 3.09, 4.27, 3.62, 7.71, 8.99, 7.92, 9.70, 10.41],i=[0.028, 0.040, 0.100, 0.145, 0.118, 0.258, 0.299, 0.257, 0.308, 0.345]。

三、实验器材PC 机 (装有 MA TLAB 软件 ) 1台 四、实验原理 4.1 Desktop 简介MATLAB R2006a 版的Desktop 操作桌面,是一个高度集成的MATLAB 工作界面。

matlab实验书

matlab实验书

MATLAB程序设计语言实验教学大纲(实验课程)◆课程编号:131089◆课程英文名称:Experiment of MATLAB Language◆课程类型:☐通识通修☐通识通选☐学科必修☐学科选修☐跨学科选修☐专业核心☑专业选修(学术研究)☐专业选修(就业创业)◆适用年级专业(学科类):三年级通信工程、电子信息工程、生物医学工程◆先修课程:C语言程序设计◆总学分:0.5◆总学时:18一、课程简介与教学目标《MATLAB程序设计语言实验》是配合电子信息工程和通信工程专业的专业选修课——《MATLAB程序设计语言》而开设的实验课程。

上机实验操作是十分重要的环节,只有通过上机实习,才能真正领会仿真技术的实现方法和MATLAB软件的强大功能,才能更好地应用于今后从事的生产和研究工作中。

二、教学方式与方法采用以上机练习为主的教学方式,通过讲解实验重点及其中包含的理论知识引导学生获得正确的实验和理论思路,从而成为理论课的有益补充,使理论和实践相结合。

三、教学重点与难点(一)教学重点教学重点是MATLAB软件的基本操作方法、MATLAB进行科学计算、图形绘制以及MATLAB的应用领域和GUI的界面设计方法。

(二)教学难点教学难点在于灵活运用各种MATLAB的程序设计方法以及调试。

四、学时分配计划五、教材与教学参考书(一)教材自编MATLAB程序设计语言实验指导书(二)教学参考书1.John G.Proakis 等著,刘树棠译.现代通信系统(MATLAB 版)(第二版) 电子工业出版社2.郭文斌,桑林.通信原理—基于MATLAB 的计算机仿真 北京邮电大学出版社六、课程考核与成绩评定【考核类型】☐ 考试 ☑ 考查【考核方式】☐ 开卷(Open-Book ) ☐ 闭卷(Close-Book ) ☐ 项目报告/论文☑ 其它: 上机 (填写具体考核方式)【成绩评定】平时成绩占(60-70)%,考试成绩占(30-40)%七、课程内容概述实验一MATLAB 基本操作(一)教学要求1、了解MATLAB 软件的使用方法以及系统组成2、掌握MATLAB 的工作空间、搜索路径以及一些常用的命令3、掌握表达式的构成4、掌握矩阵的各种输入方法、逻辑运算符和关系运算符以及矩阵的操作方法 (二)知识点提示主要知识点:矩阵的操作符以及各种操作方法 重点:矩阵输入的各种方法、各种矩阵运算 难点:矩阵的操作以及各种基本数学函数 (三)教学内容1.1 建立工作目录MYBIN 和MYDATA 。

实验五 用Matlab数据拟合

实验五 用Matlab数据拟合

2. 已知观测数据点如表所示 x 1.6 2.7 1.3 4.1 3.6 2.3 y 17.7 49 13.1 189.4 110.8 34.5
0.6
4
4.9
409.1
3
65
2.4
36.9
求a, b, c的值, 使得曲线 f(x)=aex+bsin x+c lnx 与已知数据 点在最小二乘意义上充分接近.
例4 已知观测数据点如表所示
x 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 y 3.1 3.27 3.81 4.5 5.18 6 7.05 8.56 9.69 11.25 13.17 求三个参数 a, b, c的值, 使得曲线 f(x)=aex+bx2+cx3 与 已知数据点在最小二乘意义上充分接近.
1.55
500 106
2.47
2. 93
3. 03
2.89

1000 106 1500 106 2000 106 2375 106
3 1.953 103 1.517 103 1.219 10
/ / N / m 2 3.103 103 2.465 103
解: 描出散点图, 在命令窗口输入: t=[0:1:16] y=[30.0 29.1 28.4 28.1 28.0 27.7 27.5 27.2 27.0 26.8 26.5 26.3 26.1 25.7 25.3 24.8 24.0] plot(t,y,'*')
a=polyfit(t,y,1) a= -0.3012 29.3804 hold on
beta
= 3.0022 4.0304 0.9404

数学实验MATLAB第五章

数学实验MATLAB第五章

学习方法与建议
学习方法
通过理论学习和实践操作相结合的方式,深入理解MATLAB高级编程技术的原 理和应用。
建议
在学习本章之前,读者应该已经具备一定的MATLAB基础知识和编程经验。同 时,建议读者在学习过程中多进行实践操作,通过编写代码来加深对知识点的 理解和掌握。
02 MATLAB基础知识回顾
数学实验matlab第五章
目 录
• 第五章概述 • MATLAB基础知识回顾 • 数组与矩阵操作 • 数值计算与数据分析 • 程序设计与优化 • 综合应用与案例分析
01 第五章概述
章节内容与目标
内容
介绍MATLAB中的高级编程技术 ,包括脚本和函数编程、数据结 构和算法、面向对象编程等。
目标
通过学习本章,读者应该能够熟 练掌握MATLAB的高级编程技术 ,并能够灵活运用这些技术解决 复杂的数学问题。
运算符与函数
运算符
详细讲解MATLAB中的运算符, 包括算术运算符、关系运算符、 逻辑运算符等。同时介绍运算符
的优先级和结合性。
函数
阐述函数的概念,以及如何在 MATLAB中定义和使用函数。同时 介绍函数的输入和输出参数,以及 函数的返回值。
常用函数
介绍MATLAB中常用的函数,包括 数学函数、字符串处理函数、文件 操作函数等。同时给出函数的语法 和使用示例。
矩阵的乘法
按照矩阵乘法的规则进行运算 ,结果矩阵的维数可能发生变
化。
矩阵的转置
将矩阵的行和列互换,得到转 置矩阵。
矩阵的逆
对于方阵,若其逆矩阵存在, 则可以通过特定的运算求得逆
矩阵。
数组与矩阵的应用举例
线性方程组求解
数据分析与处理

(完整版)Matlab实验5选择结构程序结构

(完整版)Matlab实验5选择结构程序结构

实验五、选择与循环结构一、实验目的:1、 掌握建立和执行M 文件的方法。

2、 掌握利用if 语句实现选择结构的方法。

3、 掌握利用switch 语句实现多分支选择结构的方法。

4、 掌握try 语句的使用。

5、 掌握利用for 语句实现循环结构的方法。

6、 掌握利用while 语句实现循环结构的方法。

7、 熟悉利用向量运算来代替循环的操作方法。

二、实验内容:1、 列分段函数的值。

⎪⎩⎪⎨⎧--≠≠<≤+--≠<-+=其他且且,632,100,6530,6222x x x x x x x x x x x y要求:(1) 用if 语句实现,分别输出x =-0.5,-3.0,1.0,2.0,2.5,3.0,5.0时的y 值。

提示:x 的值从键盘输入,可以是向量。

%homework_5_1_1.mx=input('请输入x 的值:x=');if (x<0 & x~=-3)y= x.*x + x - 6elseif (x>=0 & x<10 & x~=2 & x~=3)y=x.*x-5.*x+6elsey=x.*x-x-6end>> homework_5_1请输入x 的值:x=[-0.5 -3.0 1.0 2.0 2.5 3.0 5.0]y =-5.2500 6.0000 -6.0000 -4.0000 -2.2500 0 14.0000(2) 用逻辑表达式实现上述函数。

%homework_5_1_2.mx=input('请输入x 的值:x=')y=(x<0 & x~=-3).*(x.*x+x-6)...+(x>=0 & x<10 &x~=2 &x~=3).*(x.*x-5.*x+6)...+(x>=10 | x==-3 | x==3 | x==2).*(x.*x-x-6)>> homework_5_1_2请输入x=[-0.5 -3.0 1.0 2.0 2.5 3.0 5.0]x =-0.5000 -3.0000 1.0000 2.0000 2.5000 3.0000 5.0000 y =-6.2500 6.0000 2.0000 -4.0000 -0.2500 0 6.00002、输入一个百分制成绩,要求输出成绩的等级为A,B,C,D,E。

MATLAB上机实验报告

MATLAB上机实验报告

MATLAB上机实验报告实验一、实验目的--------------------------------------------------------------------------------------------------------3二、实验内容--------------------------------------------------------------------------------------------------------3三、实验步骤--------------------------------------------------------------------------------------------------------31. M 文件的编辑----------------------------------------------------------------------------------------------32. 程序流程控制结构---------------------------------------------------------------------------------------31) for 循环结构-----------------------------------------------------------------------------------------42) while 循环结构----------------------------------------------------------------------------------------5练习-----------------------------------------------------------------------------------------------------------53)if-else-end分支结构---------------------------------------------------------------------------------54)switc-case结构----------------------------------------------------------------------------------------63. 子函数和参数传递------------------------------------------------------------------------------------------6练习-----------------------------------------------------------------------------------------------------------74. 局部变量和全局变量--------------------------------------------------------------------------------------8 MATLAB上机练习6.1 M 文件--------------------------------------------------------------------------------------------8(1)脚本文件-----------------------------------------------------------------------------------------------------8(2)函数文件-----------------------------------------------------------------------------------------------------9(3)函数调用-----------------------------------------------------------------------------------------------------9 6.2 MATLAB 的程序控制结构( 1) for 循环----------------------------------------------------------------------------------------------------9(2) while 循环----------------------------------------------------------------------------------------------------12(3)if语句---------------------------------------------------------------------------------------------------------12(4)switch 语句-------------------------------------------------------------------------------------------------13(5)try 语句-----------------------------------------------------------------------------------------------------14(6)程序流的控制--------------------------------------------------------------------------------------------14 6.3 数据的输入与输出-----------------------------------------------------------------------------------14(1)键盘输入语句------------------------------------------------------------------------------------------14(2)屏幕输出语句---------------------------------------------------------------------------------------------14 6.4 MATLAB文件操作(1)fopen 语句-----------------------------------------------------------------------------------------------------15(2) fclose 语句-----------------------------------------------------------------------------------------------------15 6.5 面向对象编程--------------------------------------------------------------------------------------------15(1)创建类目录----------------------------------------------------------------------------------------------------15(2) 建立类的数据结构-----------------------------------------------------------------------------------------15(3)创建类的基本方法---------------------------------------------------------------------------------------------16 6.6 MATLAB 程序优化-----------------------------------------------------------------------------------------17 6.7程序调试------------------------------------------------------------------------------------------------------17 6.8 习题----------------------------------------------------------------------------------------------------------17实验五MATLAB 程序设计一、实验目的掌握MATLAB 程序设计的主要方法,熟练编写MATLAB 函数。

《MATLAB程序设计》实验指导书

《MATLAB程序设计》实验指导书

三、
实验仪器和设备
1、 计算机一台。 2、 MATLAB7.0 以上集成环境。
四、
预习要求
2
《MATLAB 程序设计》实验指导书
1、 复习 MATLAB 的启动与Байду номын сангаас出,熟悉 MATLAB 运行环境。 2、 复习 MATLAB 中矩阵的生成以及矩阵运算的基本原理。
五、
实验内容及步骤
实验内容:
1、 求下列表达式的值 1) z1
5
《MATLAB 程序设计》实验指导书
2) 函数调用 函数文件编制好后,就可调用函数进行计算了。函数调用的一般格式为 [输出实参表]=函数名(输入实参表) 注意:函数调用时各实参出现的顺序、个数,应与函数定义时形参的顺序、个 数一致,否则会出错。函数调用时,实参先传递给形参,然后再执行函数功能。 5、 选择结构 1) if 语句 a) 单分支 if 语句 if 条件 语句块 end b) 双分支 if 语句 if 条件 语句块 1 else 语句块 2 end c) 多分支 if 语句 if 条件 1 语句块 1 elseif 条件 2 语句块 2 …… elseif 条件 n 语句块 n else 语句块 n+1 end 2) switch 语句 switch 表达式 case 结果表 1 语句块 1 case 结果表 2 语句块 2 ……
二、
实验原理
1、 M 文件 用 MATLAB 语言编写的程序,称为 M 文件,它们的扩展名均为.m。M 文件根据 调用方式的不同分为两类,命令文件(Script file)和函数文件(Function file) 。 2、 建立新的 M 文件 启动 MATLAB 文本编辑器有 3 种方法: 1) 单击工具栏上的“New M-File”命令按钮。 2) 从 MATLAB 主窗口的“File”菜单中选择“New”菜单项,再选择“M-file”命令。 3) 在 MATLAB 命令窗口输入命令“edit”。 3、 打开已有的 M 文件 1) 在当前目录窗口选中要打开的 M 文件,双击鼠标左键。 2) 单击 MATLAB 主窗口工具栏上的“Open File”命令按钮,再从弹出的对话框中 选择所需打开的 M 文件。 3) 从 MATLAB 主窗口的“File”菜单中选择“Open”命令,在“Open”对话框中选中 所需打开的文件。 4) 在 MATLAB 命令窗口输入命令“edit 文件名” 。 4、 函数文件 1) 函数文件的基本结构 函数文件由 function 语句引导,其基本结构为: function 输出形参表=函数名(输入形参表) 注释说明部分 函数体语句 注意:函数名的命名规则与变量名相同。当输出形参多于一个时,应用方括号 括起来。

MATLAB程序设计与应用课后实验答案

MATLAB程序设计与应用课后实验答案
A+6.*B
A-B+eye(3)
A*B
A.*B
A^3
A.^3
A/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.*B
A-B+eye(3)
A*B
A.*B
A^3
A.^3
A/B
B\A
0 0 0 0
ans =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
由ans,所以
2. 产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。为什么?
解:M文件如下:
输出结果:
H =
P =
1 1 1 1 1
Columns 57 through 60
Column 61
z4 =
0 0
2. 已知:
求下列表达式的值:
(1) A+6*B和A-B+I(其中I为单位矩阵)
(2) A*B和A.*B
(3) A^3和A.^3
(4) A/B及B\A
(5) [A,B]和[A([1,3],:);B^2]
解:
M文件:
A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7];
实验四 循环结构程序设计
一、实验目的
1. 掌握利用for语句实现循环结构的方法。
2. 掌握利用while语句实现循环结构的方法。

实验五---M文件的编写与调试(答案)

实验五---M文件的编写与调试(答案)

MATLAB实验报告
专业班级
姓名
学号
成绩评定
电气与信息学院
和谐勤奋求是创新
实验教学考核和成绩评定方法
1.课内实验考核成绩,严格按照该课程教学大纲中明确规定的比重执行。

实验成绩不合格者,不能参加课程考试,待补做合格后方能参加考试。

2.单独设立的实验课考核按百分制评分,考核内容应包括基本理论、实验原理和实验。

3.实验考核内容包括:1〕实验预习;2〕实验过程〔包括实验操作、实验记录和实验态度、表现〕;3〕实验报告;权重分别为0.2 、0.4 、0.4;原则上根据上述三个方面进行综合评定。

学生未取得1〕和2〕项成绩时,第3〕项成绩无效。

4.实验指导教师应严格按照考核内容分项给出评定成绩,并及时批改实验报告,给出综合成绩,反馈实验中出现的问题。

实验成绩在教师手册中有记载。

实验报告主要内容
一.实验目的
二.实验仪器及设备
三.实验原理
四.实验步骤
五.实验记录及原始记录
六.数据处理及结论
七. 思考题
八.实验体会〔可选项〕
注:1. 为了节省纸张,保护环境,便于保管实验报告,统一采用A4纸,实验报告建议双面打印〔正文采用宋体五号字〕或手写,右侧装订。

2. 实验类别指验证、演示、综合、设计、创新〔研究〕、操作六种类型实验。

3. 验证性实验:是指为了使学生稳固课程基本理论知识而开设的强调演示和证明,注重实验结果〔事实、
概念或理论〕的实验。

4. 综合性实验:是指实验内容涉及本课程的综合知识或本课程相关的课程知识的实验。

5. 设计性实验:是指给定实验目的、要求和实验条件,由学生自行设计实验方案并加以实现的实验。

实验五 matlab基础知识(简单)

实验五 matlab基础知识(简单)

本次实验注意:《实验五MALTAB基础知识(简单)》《实验五基于Matlab的信号频谱分析(复杂)》选作一个即可实验五MALTAB基础知识(一)实验目的 (2)(二)实验设备 (2)(三)实验要求 (2)(四)实验内容 (2)1.1 MATLAB基础知识 (2)1.1.1 MATLAB程序设计语言简介 (2)1.1.2 MA TLAB界面及帮助 (2)1.2 MA TLAB基本运算 (4)1.2.1 MA TLAB内部特殊变量和常数 (4)1.2.2 变量类型 (4)1.2.3 内存变量管理 (5)1.2.4 MA TLAB常用数学函数 (5)1.2.5 MA TLAB矩阵生成 (5)1.2.6 MA TLAB矩阵运算 (8)1.2.7 MA TLAB中的矩阵分析 (10)1.3 MA TLAB程序设计 (10)1.3.1 M文件 (10)1.3.2 程序控制结构 (12)实验五MALTAB基础知识(一)实验目的●了解MA TLAB 程序设计语言的基本特点,熟悉MA TLAB软件运行环境●掌握创建、保存、打开m文件及函数的方法●掌握变量等有关概念,具备初步的将一般数学问题转化为对应的计算机模型并进行处理的能力(二)实验设备计算机,Matlab软件(三)实验要求本实验属于验证实验,请根据(四)实验内容的步骤,运行相应的指令或例子,并将仿真结果截图至文档(请自己新建一个word文档,注意,并不一定所有指令或例子的实验结果都要截图,截图数目大于等于5个即可,自己选择性截图,答案不唯一,自由发挥)请在页眉处填写班级、学号、姓名,并将实验报告命名为“实验五_学号_姓名”,并通过FTP上传至指定文件夹。

(四)实验内容1.1 MATLAB基础知识1.1.1 MATLAB程序设计语言简介MA TLAB,Matrix Laboratory的缩写,是由MathWorks公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。

MATLAB程序设计与应用(第二版)课后实验答案

MATLAB程序设计与应用(第二版)课后实验答案

Matlab课后实验题答案实验一 MATLAB运算基础1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。

(1)0 122sin851ze =+(2)21ln(2z x=,其中2120.455ix+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.52. 已知:1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:(1) A+6*B 和A —B+I(其中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. 设有矩阵A 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。

(2) 将矩阵C 的右下角3×2子矩阵赋给D 。

(3) 查看MATLAB 工作空间的使用情况。

4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。

(2) 建立一个字符串向量,删除其中的大写字母。

解:(1) 结果:(2).建立一个字符串向量 例如: ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1。

设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。

实验五 MATLAB程序设计(2)

实验五 MATLAB程序设计(2)

实验五MATLAB程序设计(2)一、m脚本文件和M函数文件:(一)m脚本文件1.格式和前后位置与命令窗口中的命令行相同,除了没有函数声明行之外,和m函数文件类似。

2.M脚本文件运行产生的变量都驻留在MATLAB的工作空间,可以在命令窗口方便的查看变量。

(二)M函数文件1.每个文件以函数声明行开头,函数声明行的格式如下:function [输出参数列表]=函数名(输入参数列表)说明:▲函数名是函数的名称,保存时函数名和文件名应一致。

▲输入参数列表是函数接收的输入参数,多个参数间用“,”分隔。

▲输出参数列表是函数的运算结果,多个参数间用“,”分隔。

2.当文件执行完最后一条命令或遇到”return”命令时就结束函数文件的运行,同时函数工作空间的变量被清除。

3.一个m函数文件中可以包含一个或多个函数,主函数是出现在文件最上方的函数,一个m文件只能有一个主函数,通常主函数名与m函数文件名相同。

4.在一个m函数文件中如果包含一个或多个函数,则除了第一个主函数之外,其余的都是子函数。

子函数只能被同一文件中的函数(主函数或子函数)调用。

5.在命令窗口调用m 函数文件时,输入文件名和必要的参数即可。

二、实验内容1.创建矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--=0000020001100120123 n n n y (1) 创建m 脚本文件,使用for 循环结构建立矩阵n=6;y=zeros(n);for m=1:n-1for mn=(m+1):ny(m,mn)=mn-1;endend(2) 创建m 脚本文件,使用while 循环结构建立矩阵n=6;y=zeros(n);m=1;while m<nmn=m+1;while mn<=ny(m,mn)=mn-1;mn=mn+1;endm=m+1;end(3)使用m函数文件function y=sy1(n)y=zeros(n);for m=1:n-1for mn=(m+1):ny(m,mn)=mn-1;endend2.“水仙花数”是一个三位数,各位数的立方和等于该数本身,如果是“水仙花数”则函数输出为1,否则输出为0。

matlab程序课程设计

matlab程序课程设计

matlab程序课程设计一、教学目标本课程的教学目标是使学生掌握MATLAB编程的基本知识和技能,能够运用MATLAB解决简单的数学和工程问题。

具体目标如下:1.理解MATLAB的基本概念,如变量、矩阵、数组等。

2.掌握MATLAB的基本语法,如运算符、函数、循环和条件语句等。

3.了解MATLAB的绘图功能,能够绘制基本的图形。

4.能够使用MATLAB进行简单的数学计算和数据分析。

5.能够编写MATLAB脚本程序,解决实际问题。

6.能够使用MATLAB的绘图功能,进行数据可视化。

情感态度价值观目标:1.培养学生的计算机编程思维,提高解决问题的能力。

2.培养学生团队合作的精神,提高沟通与协作能力。

3.培养学生对科学研究的兴趣,提高创新意识。

二、教学内容根据教学目标,本课程的教学内容主要包括以下几个方面:1.MATLAB概述:介绍MATLAB的发展历程、功能特点和应用领域。

2.MATLAB基本语法:变量、矩阵、数组、运算符、函数、循环和条件语句等。

3.MATLAB绘图功能:基本图形绘制、图形编辑和格式设置等。

4.MATLAB编程实践:数学计算、数据分析、实际问题解决等。

5.第1周:MATLAB概述和基本语法。

6.第2周:MATLAB绘图功能。

7.第3周:MATLAB编程实践(数学计算和数据分析)。

8.第4周:MATLAB编程实践(实际问题解决)。

三、教学方法为了达到教学目标,本课程将采用以下教学方法:1.讲授法:讲解MATLAB的基本概念、语法和绘图功能。

2.案例分析法:分析实际问题,引导学生运用MATLAB编程解决。

3.实验法:上机操作,让学生亲手编写MATLAB程序,巩固所学知识。

4.小组讨论法:分组完成项目任务,培养团队合作和沟通能力。

四、教学资源为了支持教学内容和教学方法的实施,本课程将采用以下教学资源:1.教材:《MATLAB程序设计》。

2.参考书:提供一些MATLAB编程的参考书籍,供学生自主学习。

《Matlab程序设计》课程教学大纲

《Matlab程序设计》课程教学大纲

Matlab程序设计Matlab Program Design一、课程基本情况课程类别:专业任选课课程学分:2学分课程总学时:32学时,其中讲课:24学时,实验(含上机):8学时课程性质:选修开课学期:第4学期先修课程:计算机基础,高等数学,线形代数适用专业:电子科学与技术教材:MATLAB程序设计教程,中国水利水电出版社,刘卫国,2010,第2版开课单位:电子与信息工程学院电子科学与技术系二、课程性质、教学目标和任务MATLAB程序设计是电子与电气信息类相关专业的专业任选课程之一。

MATLAB是由MathWorks 公司1985 年推出的一种面向科学与工程的计算软件,它具有极强的数值计算、图形文字处理、数据分析、动态仿真、信号处理等功能,涉及了数值分析、自动控制、信号处理、图像处理等十几个领域的计算和图形显示,功能强大。

因此,将MATLAB引入教学,强化应用能力培养,学生在学习专业基础课程时,增加工程应用背景,在打好专业基础的同时,提高学生的应用、创新意识。

通过本课程的学习,使学生学习和掌握如何利用MATLAB对所学理论、原理和方法进行计算机仿真,通过仿真,加深对所学知识的理解和掌握,解决学习相关课程中遇到的抽象问题,为后续专业课程的学习奠定基础。

通过工程软件在电气类专业基础课程的应用,提高学生动手能力、分析问题与解决问题的能力,到达对学生的工程意识培养的目的。

三、教学内容和要求第1章MATLAB系统环境(2学时)(1 )了解MATLAB的影响及其开展历史和MATLAB 7.0的主要功能;(2)理解MATLAB 7.0的运行环境与安装过程,熟悉菜单栏、工具栏的使用;( 3)掌握命令窗口、历史记录窗口、当前目录窗口的使用方法;重点:命令窗口、历史记录窗口、当前目录窗口的使用方法;难点:MATLAB 7.0的辅助局部和MATLAB的数学函数库。

第2章MATLAB数据及其运算(2学时)(1 )了解元胞数组、结构与结构数组;( 2)理解一、二维数组的创立方法;( 3)掌握数值表示、变量表达式、矩阵的表示、字符串矩阵的算术运算、数组运算;重点:矩阵线性运算;创立数组、数组的算术运算;难点:数组运算。

实验五-MATLAB的程序设计

实验五-MATLAB的程序设计

实验五MATLAB的程序设计一、实验目的1.熟悉MATLAB 的编程环境;2.熟悉和掌握脚本文件和函数文件建立与使用方法;3.掌握MATLAB程序设计的流程控制语句;4.掌握函数调用和参数传递;5.熟悉MATLAB 程序调试方法。

二、实验仪器1.计算机2.MATLAB 软件环境三、实验指导1. M 文本文件介绍一个M 文件通常包含五个部分,函数定义语句、H1 帮助行、帮助文本、函数体或者脚本文件语句和注释语句。

一个完整的M 文件的结构为:function f = fact(n) 函数定义语句% Compute a factorial value. H1 行% FACT(N) returns the factorial of N, 帮助文本% usually denoted by N!% Put simply, FACT(N) is PROD(1:N). 注释语句f = prod(1:n); 函数体函数定义语句只在函数文件中存在,定义函数名称、输入输出参数的数量和顺序。

函数定义语句的格式为:function y = fact(x)2. 函数流程控制顺序结构顺序结构是最简单的程序结构,系统在编译程序时,按照程序的物理位置顺序执行。

这种程序容易编制,但是结构单一,能够实现的功能有限。

判断语句(if…else…end)if…endif…else…endif…elseif…else…end1)if…end此时的程序结构如下:if 表达式执行代码块end这是最简单的判断语句,只有一个判断语句,其中的表达式为逻辑表达式,当表达式为真时,执行相应的语句,否则,直接跳到下一段语句。

2)if…else…end当程序有两个选择时,可以选择if…else…end 结构,此时程序结构为:if 表达式执行代码块1else执行代码块2end当判断表达式为真时,执行代码块1,否则执行代码块2。

3)if…elseif…else…end上面的两种形式中,分别包含一个选择和两个选择,当判断包含多个选择时,可以采用elseif 语句,结构为:if 表达式1执行代码块1elseif 表达式2执行代码块2elseif ..................else执行代码块end其中可以包含任意多个elseif 语句。

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

实验五M文件和MATLAB程序设计
一、实验目的
matlab作为一种高级计算机语言,不仅可以命令行方式完成操作,也具有数据结构、控制流、输入输出等能力,本次实验通过熟悉和掌握m文件的建立与使用方法,以及函数与控制程序流程语句的使用,使学生具备一定的编程和程序调试能力。

1.掌握M文件的使用方法。

2.掌握if语句和switch语句的使用
3. 掌握循环语句的使用
4. 通过练习理解MATLAB编程方法。

二、实验原理
1.m文件
用matlab语言编写的程序,称为m文件。

M文件根据调用方式的不同分为两类,命令文件(Script file)和函数文件(Function file)。

区别?
2.程序控制结构
1)顺序结构
2)选择结构
(1)if语句a) 单分支if语句b) 双分支if语句c) 多分支if语句
(2)switch 语句
(3)try语句
3)循环结构
(1)for 语句
(2)while语句
(3)break语句、continue语句、return使用,区别?
3.函数文件
function 输出形参表=函数名(输入形参表)
注释说明部分
函数体语句
注意事项?
三、实验要求
1.首先上机练习PPT中各种流程控制语句的有关实例。

2.然后上机练习下面的实验习题。

四、实验习题
1.数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。

重复此过程,最终得到的结果为1。

如:
2→1
3→10→5→16→8→4→2→1
6→3→10→5→16→8→4→2→1
运行下面的程序,按程序提示输入n=1,2,3,5,7,8,9等数来验证这一结论。

%classic "3n+1" problem from number theory.
while 1
n=input('Enter n,negative quits:');
if n<=0
break
end
a=n;
while n>1
if rem(n,2)==0
n=n/2;
else
n=3*n+1;
end
a=[a,n];
end
a
end
Enter n,negative quits:
2. 编程求满足∑=>m
i i 11000020的最小m 值。

a=0;
i=1; while (a<100000) a=a+pow2(i); i=i+1; end m=i-1
3. 编写一个函数,计算下面函数的值,给出x 的值,调用该函数后,返回y 的值。

function [y]=myfun1(x)
⎪⎩
⎪⎨⎧>+-≤<≤=3,630,
0,sin )(x x x x x x x y
选择一些数据测试你编写的函数。

function y=myfun1(x) if x<=0 y=sin(x); elseif x>0&x<=3 y=x; elseif x>3 y=-x+6; end 运行结果:
4. 用如下迭代公式求a ,迭代的终止条件为5n 1n 10x x -+≤-,迭代初值0.1x 0=,迭代次数不超过100次。

分别对迭代结果和准确值进行比较,并统计迭代次数。

迭代公式:11122--++=n n n x a x x
function [x, n]=sqrt_a(a) x=1.0; for k=1:100 m=x; x=x/2+a/(2*x); if abs(x-m)<=10^(-5) break end end x; n=k; s=(x-sqrt(a)); if abs(s)<=10^(-5) disp('正确'); else disp('错误'); end 下面调用举例:
运行结果:
>> [x ,n]=sqrt_a(3) 正确
x = 1.7321 n = 5 >> [x, n]=sqrt_a(17) 正确
x = 4.1231 n = 6 >> [x,n]=sqrt_a(113) 正确
x =
10.6301
n =
8
5.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。

程序设计:
function [e ln s c]=num(x)
e=exp(x)
ln=log(x)
s=sin(x)
c=cos(x)
end
运行结果:
>> num(5i)
e =
0.2837 - 0.9589i
ln =
1.6094 + 1.5708i
s =
0 +74.2032i
c =
74.2099
ans =
0.2837 - 0.9589i
6. 设 f(x)=01.011.01
)3()2(4
2+++--x x ,编写一个MATLAB 函数文件fx.m ,使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵。

程序设计:
函数文件fx.m:
function A=fx(x)
A=1./((x-2).^2+0.1)+1./(((x-3).^4)+0.01)
end
调用fx.m 的命令文件:
>> A=fx([1 2;2 3;4 3])
运行结果:
A =
0.9716 10.9901
10.9901 100.9091
1.2340 100.9091
7. 已知y=)
20()30()40(f f f 当f(n)=n+10ln(n 2+5)时,求y 的值。

函数文件fn.m:
function x=fn(n)
x=n+10*log(n^2+5)
end
调用fn.m 的命令:
y=fn(40)/(fn(30)+fn(20))
运行结果:
y =
0.6390
五、实验小结和心得
通过本次实验,我了解了MATLAB 的工作模式和M 文件的构成规则,了解了命令M 文件和函数M 文件的异同。

会MATLAB 的M 文件的创建与修改,会使用函数句柄调用函数,会运用顺序结构、循环结构和分支结构进行计算机编程。

会控制MATLAB 的程序流,熟悉了应用程序设计的基本步骤。

能对文件进行简单操作,会调试和优化所设计的程序。

对应用程序接口的设计也有所了解。

MATLAB 语言被称为第四代编程语言,程序简洁、可读性很强,而且调试十分容易。

它是MATLAB 重要组成部分。

通过这次试验我已经对MATLAB 的工作模式有一个大致的了解,并掌握如何创建M 文件,包括命令文件和函数文件。

熟练地掌握MATLAB 的程序设计流程和程序设计的基本结构,并能初步设计一些简单的能解决实际问题的程序。

指导老师:_________________
实验时间和地点:______________
实验成绩:____________________。

相关文档
最新文档