搜档网
当前位置:搜档网 › (完整版)matlab基础练习题及答案

(完整版)matlab基础练习题及答案

(完整版)matlab基础练习题及答案
(完整版)matlab基础练习题及答案

第1章MATLAB基础

1.4 MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?

答:在MATLAB操作桌面上有五个窗口。在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口。在独立窗口的Desktop菜单中选择Dock...项就可以将独立的窗口重新放置到桌面上。

1.5 如何启动M文件编辑/调试器?

答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。

1.6 存储在工作空间中的数组能编辑吗?如何操作?

答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。

1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?

答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选

定的内容拷贝到剪贴板中、将选定内容直接拷贝到M 文件中。

1.8 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别? 答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file 菜单中的Set Path 菜单项来完成。在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB 运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。

1.9 在MATLAB 中有几种获得帮助的途径?

答:(1)帮助浏览器:选择view 菜单中的Help 菜单项或选择Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器。

(2)help 命令:在命令窗口键入“help ” 命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息。

(3)lookfor 命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数。

(4)模糊查询:输入命令的前几个字母,然后按Tab 键,就可以列出所有以这几个字母开始的命令和函数。

注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help 命令显示详细信息。

第2章 MATLAB 矩阵运算基础

2.1 在MATLAB 中如何建立矩阵??

?

?

??194375,并将其赋予变量a ?

答:在Command Window 窗口输入操作:

>> a=[5 7 3;4 9 1]

2.2 有几种建立矩阵的方法?各有什么优点?

答:(1)直接输入法,如a=[1 2 3 4],优点是输入方法方便简捷;

(2)通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; (3)由函数建立,如y=sin(x),可以由MATLAB 的内部函数建立一些特殊矩阵; (4)通过数据文件建立,该方法可以调用由其他软件产生数据。

2.3 在进行算术运算时,数组运算和矩阵运算各有什么要求?

答:进行数组运算的两个数组必须有相同的尺寸。进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b )时必须满足a 的列数等于b 的行数。

2.4 数组运算和矩阵运算的运算符有什么区别?

答:在加、减运算时数组运算与矩阵运算的运算符相同,乘、除和乘方运算时,在矩阵运算的运算符前加一个点即为数组运算,如a*b 为矩阵乘,a.*b 为数组乘。

2.5 计算矩阵??????????897473535与????

?

?????638976242之和。 答:

2.6 求?

?

?

???+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。

答:

2.7 计算??????=572396a 与??

?

???=864142b 的数组乘积。 答:

2.8 “左除”与“右除”有什么区别?

答:在通常情况下,左除x=a\b 是a*x=b 的解,分母在左边。右除x=b/a 是x*a=b 的解,

分母在右边。一般情况下,a\b ≠b/a 。

2.9 对于B AX =,如果????

?

?????=753467294A ,??????????=282637B ,求解

X 。

答:

2.10 已知:??

??

?

?????=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。

答:a 的数组的平方:

a 的矩阵的平方:

2.11 ???

???-=463521a ,??

?

???-=263478b ,观察a 与b 之间的六种关系运算的结果。

答:

2.12 []7.0802.05--=a ,在进行逻辑运算时,a 相当于什么样的逻辑量。

答:相当于a=[1 1 0 1 1]。

2.13 在sin(x)运算中,x是角度还是弧度?

答:在sin(x)运算中,x是弧度,MATLAB规定所有的三角函数运算都是按弧度进行运算。

2.14 角度[]60

30

=x,求x的正弦、余弦、正切和余切。

45

答:

2.15 用四舍五入的方法将数组[2.4568 6.3982

3.9375 8.5042]取整。

答:

2.16 矩阵??

??

?

?????=728365219a ,分别对a 进行特征值分解、奇异值分解、LU 分解、QR 分解及

Chollesky 分解。

答:

2.17 将矩阵????

??=5724a 、??????=3817b 和??

?

???=2695c 组合成两个新矩阵:

答:(1)组合成一个4?3的矩阵,第一列为按列顺序排列的a 矩阵元素,第二列为按列顺序排列的b 矩阵元素,第三列为按列顺序排列的c 矩阵元素。

(2)按照a 、b 、c 的列顺序组合成一个行矢量

或利用(1)中产生的d

第2章基本图形处理功能

2.18 绘制曲线1

3+

y,x的取值范围为[-5,5]。

x

+

=x

2.19 有一组测量数据满足-at e=y,t的变化范围为0~10,用不同的线型和标记点画出

a=0.1、a=0.2和a=0.5三种情况下的曲线。

2.20 在5.1题结果图中添加标题-at e=y,并用箭头线标识出各曲线a的取值。

2.21 在5.1题结果图中添加标题-at e=y和图例框。

2.22表中列出了4个观测点的6次测量数据,将数据绘制成为分组形式和堆叠形式的条形图。

第1次第2次第3次第4次第5次第6次

观测点

3 6 7

4 2 8

1

观测点

6 7 3 2 4 7

2

观测点

9 7 2 5 8 4

3

观测点

6 4 3 2

7 4

4

2.23 x= [66 49 71 56 38],绘制饼图,并将第五个切块分离出来。

2.24 2

2

y x

xe z --=,当x 和y 的取值范围均为-2到2时,用建立子窗口的方法在同一个图形

窗口中绘制出三维线图、网线图、表面图和带渲染效果的表面图。

2.25 绘制peaks函数的表面图,用colormap函数改变预置的色图,观察色彩的分布情况。

2.2 用sphere函数产生球表面坐标,绘制不通明网线图、透明网线图、表面图和带剪孔的表面图。

matlab基础与指导应用部分习题问题详解

作业一 4、写出完成下列操作的命令。 (1)将矩阵A第2~5行中第1,3,5列元素赋给矩阵B。>> M=[0:1:48]; >> A=reshape(M,7,7) A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 47 6 13 20 2 7 34 41 48 >> B=A(2:5,1:2:5) B = 1 15 29 2 16 30 3 17 31 4 18 32 (2)删除矩阵A的第七行元素。 >> A(7,:)=[] A = 0 7 14 21 28 35 42 1 8 15 2 2 29 36 43 2 9 16 2 3 30 37 44 3 10 17 2 4 31 38 45 4 11 18 2 5 32 39 46 5 12 19 2 6 33 40 4 7 (3)将矩阵A的每个元素值加30。 >> A=A+30 A = 30 37 44 51 58 65 72 31 38 45 52 59 66 73 32 39 46 53 60 67 74

33 40 47 54 61 68 75 34 41 48 55 62 69 76 35 42 49 56 63 70 77 (4求矩阵A的大小和维素。 sizeA = size(A) dA = ndims(A) sizeA = 6 7 dA = 2 (5)将向量t的0元素用机器零来代替。 >> t=[1 2 3 4 0 5]; t = 1 2 3 4 0 5 >> find(t==0) ans = 5 >> t(5)=eps t = 1.0000 2.0000 3.0000 4.0000 0.0000 5.0000 (6)将含有12个元素的向量x转换成3*4矩阵。 >> x=[0:11] x = 0 1 2 3 4 5 6 7 8 9 10 11 >> y=reshape(x,3,4) y =

MATLAB基础及应用实验指导书

MATLAB基础及应用实验指导书

MATLAB基础及应用课程实验指导书 实验一软件环境和基本操作熟悉 一、实验目的 ①熟悉MATLAB 主界面,并学会简单的菜单操作。 ②学会简单的矩阵输入与信号输入。 ③掌握部分绘图函数。 二、实验内容 熟悉MATLAB操作环境,通过简单操作熟悉MATLAB的基本使用方法。 三、实验要求与步骤 1、用户第一次使用MATLAB 时,建议首先在屏幕上键入demo 命令,它将启动MATLAB 的演试程序,用户可在此演示程序中领略MATLAB 所提供的强大的运算与绘图功能。也可以键入help 进行进一步了解。 MATLAB 启动界面如图所示: MATLAB 语言最基本的赋值语句结构为:变量名列表= 表达式。表达式由操作符或其它字符,函数和变量名组成,表达式的结果为一个矩阵,显示在屏幕上,同时输送到一个变量中并存放于工作空间中以备调用。如果变量名和“= ”省略,则ans 变量将自动建立,例如键入:1900/81 ,得到输出结果:ans =23.4568 。 MATLAB 中变量命名的原则要求必须以英文字母开头,文件夹名字中可以

还包括、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的。这种规则包括将来为自己编写的脚本文件、函数文件命名以及为使用的变量命名也应遵循这个规则。 2、用户工作目录和当前目录的建立和设置 1)为管理方便,每个用户在使用MATLAB 前,尽量为自己建立一个专门的工作目录,即“用户目录”,用来存放自己创建应用文件。例如首先打开资源管理器,在E 驱动器下可以根据自己喜好建立一个新文件夹,但应注意:该文件夹必须以英文开头,文件夹名字中可以包括字母、下划线和数字,不要使用其他的字符,更不要单纯使用数字或者中文名命名,有时在运行MATLAB 中一些莫名的错误可能就是不规范的命名引起的,这与MATLAB 中为变量和文件名命名原则是一致的。尽管MATLAB\work 允许用户存放用户文件,但最好把它仅作为临时工作目录来使用。 2)为了用户运行方便,在开始工作前可把用户定义的目录设置为当前目录,方法是可直接在MATLAB 命令窗口桌面上方通过目录设置栏来实现。 3)把自己的工作目录加到MATLAB 搜索路径上,这样可以在任何情况下方便地调用自己的编写文件。MATLAB 工作时,基本搜索过程为:首先在工作空间,即MATLAB 内存中进行检查,看输入的指令是不是变量;如不是,则检查输入指令是不是内建函数(比如sin 函数等);如不是,则在当前目录上,检查是否有与输入指令相同的M 文件存在;如还没有,则在MATLAB 定义的搜索路径其他目录中,检查是否有该M 文件存在。设置方法是通过File 菜单下设置路径对话框进行。 3、熟悉简单的矩阵输入 1)从屏幕上输入矩阵A=[1 2 3 ;4 5 6;7 8 9] 回车 A=[1,2,3;4,5,6;7,8,9] 回车 观察输出结果。 2)试用回车代替分号,观察输出结果。 3)输入size(A) ,观察结果。 4)输入矩阵B=[9,8,7;6,5,4;3,2,1];回车 输入矩阵C=[4,5,6;7,8,9;1,2,3];回车,然后分别键入 A B C 回车观察结果。 5)选择File | new 菜单中的M-file ,输入B=[9,8,7;6,5,4;3,2,1] ;保存为

MATLAB基础及应用论文

题目 : MATLAB 语言多项式计算的分析与概述 摘要 :数值计算在科学研究与工程应用中有着十分广泛的应用,MATLAB 向我们提供 了标准的多项式的常用函数,包括求根、相乘、相除等。这些功能在进行现代数字信号处理与分析时非常有用。本文主要通过示例的形式分析与概述MATLAB 多项式计算的基本内容。 关键词 : 多项式 ;运算 ; 函数 ; 拟合 ; MATLAB 。 一、 引言 : MATLAB 是由MATH WORKS 公司推出的一种面向科学与工程的计算软件。 如今MATLAB 语言发展速度非常快,涉及十分广阔,本文主要讨论MATLAB 多项式的计 算,可谓MATLAB 的冰山一角。读者若要了解MATLAB 语言的更多知识还应多读多看他人著作。 二、 多项式计算 : 1,多项式的创建方法 : 在MATLAB 里:多项式由一个行向量表示,它的系数是按降序排列。 例如: 由1×N 的向量 表示 多项式,如用poly2sym()可以查看这个多项式。 (1)直接输入法 在MATLAB 命令窗口中直接输入多项式的系数矢量,然后利用转换函数poly2sym 将多项式由系数矢量形式转换为符号新式。 (2)指令P=poly(AR)法 若AR 是方阵,多项式P 是该方阵的特征多项式 若AR=[a 1, a 2,…,a n-1,a n ],则AR 的元素认为是多项式P 的根 如果A 为二维矩阵, poly(A)给出A 的特征多项式。如果A 为一维矩阵, poly(A)表示由A 的元素为多项式的根所确定的多项式。 【例1】产生多项式的方法。 clear %方法一(由多项式的系数确定的多项式) p=[1 -2 3]%直接给出多项式p poly2sym(p)%给出p 多项式的表达式 %方法二(由矩阵所确定的多项式) a=[1 2;-2 4] ] ..[210n a a a a p =n n n n n a x a x a x a P ++++=-- (22110)

MATLAB基础及其应用教程周开利邓春晖课后答案

第三章习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

分段线性和三次样条插值方法与精确值之差取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 分段线性和三次样条插值方法与精确值之差

解答: >> x=[0,300,600,1000,1500,2000]; >> y=[0.9689,0.9322,0.8969,0.8519,0.7989,0.7491]; >> xi=0:100:2000; >> y0=1.0332*exp(-(xi+500)/7756); >> y1=interp1(x,y,xi,'spline'); >> p3=polyfit(x,y,3); >> y3=polyval(p3,xi); >> subplot(2,1,1);plot(xi,y0,'o',xi,y1,xi,y3,'-.'); >> subplot(2,1,2);plot(xi,y1-y0,xi,y3-y0);grid on 插值和拟合方法相比较,都合理,误差也相近。 解答: 梯形法积分 >> x=-3:0.01:3;

matlab基础与应用教程答案

8-1建立一个图形窗口,使之背景颜色为红色,并在窗口上保留原有的菜单项,而且在按下鼠标左键之后显示出Left Button Pressed 字样。 本体程序: clc; hf=figure('color','r','windowbuttondownfcn','axis off;text(0.1,0.5,''Left Button Pressed'',''fontsize'',30)') 运行结果: hf = 1 8-3利用图形对象绘制下列曲线,要求先利用默认属性绘制曲线,然后通过图形句柄操作来改变曲线的颜色、线型和线宽,并利用文字对象给曲线添加文字标注。 (1)2)cos(2.0+=-x e y x clc; x=0:5*pi; y=exp(-0.2*x).*cos(x)+2; h=plot(x,y); set(h,'Color',[1,0,0],'LineStyle',':','LineWidth',2);

(2)?????==325t y t x 程序: t=0:2:100; x=t.*t; y=5*t.^3; hf=plot(x,y); set(hf,'color','b','linestyle',':','marker','p','linewidth',0.3);

8-4利用图形对象绘制下列三维图形,要求与上题相同。 (1)?? ???===t z t y t x sin cos 程序: t=0:0.1:2*pi; x=cos(t); y=sin(t); z=t; hf=plot3(x,y,z); 运行结果:

8-5以任意位置子图形式绘制出正弦、余弦、正切和余切函数曲线。clc; x=-2*pi:0.01:2*pi; y1=sin(x); y2=cos(x); axes('Position',[0.1,0.6,0.2,0.2]) plot(x,y1); ht=get(gca,'Title');set(ht,'Color','r');title('y=sin(x)') hc=get(gca,'Children'),set(hc,'Color','b','LineWidth',1.5) axes('Position',[0.6,0.6,0.2,0.2]) plot(x,y2,'r'); ht=get(gca,'Title');set(ht,'Color','r');title('y=cos(x)') axes('Position',[0.1,0.1,0.2,0.2]) fplot('tan(x)',[-1.5,1.5]); ht=get(gca,'Title');set(ht,'Color','r');title('y=tan(x)') axes('Position',[0.6,0.1,0.2,0.2]) fplot('cot(x)',[0,1,3]); ht=get(gca,'Title');set(ht,'Color','r');title('y=cot(x)')

最新Matlab基础及应用的教学大纲资料

《Matlab基础及应用》教学大纲 执笔人:肖顺根课程编号: 总学时数:36学时(其中授课18学时,实验18学时) 学分:2 学分 一、本课程的地位、作用与任务: 本课程是电气工程及自动化专业基础的必修课程。是电气工程及自动化专业的重要实践性课程。通过本课程的学习,可以使得本专业学生掌握Matlab这一现代的科学计算和系统仿真语言的基本编程思想和方法,并利用Matlab对所学基础课程进行上机模拟实验和数值计算,从而通过Matlab编程实验来验证和巩固所学的数学和工程理论。 二、课程教学基本要求 MATLAB是MathWorks公司推出的一套高性能的数值计算和可视化软件,可以解决工程、科学计算和数字信号处理、通信、数学等学科中许多问题。本课程主要介绍MATLAB语言的应用环境、调试命令,各种基本命令和高级操作命令,绘图功能函数,循环和条件分支等控制流语句。课程最后简介MATLAB语言中的几个主要工具箱,为后续的专业课程提供有力的工具。本课程以讲课为主,结合上机实验,使学生通过编程实例掌握MATLAB语言的编程基础与技巧。三、先修课程的要求 《高等数学》、《线性代数》、《自动控制原理》等。 四、教学方法及建议 1、本课程是电气工程及其自动化专业的实践性基础课程,应采用多媒体教学方式,结合Matlab仿真软件进行课堂演示。力求生动有趣,并随时通过提问等方式调动学生的学习积极性。 2、MA TLAB软件在电气工程及自动化专业中的应用非常广泛和实用,应结合《自动控制原理》知识尽可能发挥MATLAB软件的功效。 五、教学要求的层次 了解Matlab 的特点; 理解Matlab 的数值计算、程序设计、绘图功能及在通信工程的科学计算和建模中的应用; 掌握Matlab语言的基本编程思想和方法。 六、教学内容、要求及学时安排 第一单元MATLAB 概述(2学时) 1. Matlab 的特点、绪论 2. Matlab 快速入门 要求:了解MATLAB的主要功能,熟悉MATLAB命令窗口及文件管理,MATLAB帮助系统。掌握命令行的输入及编辑,用户目录及搜索路径的设置。 重点和难点:命令行的输入,用户目录及搜索路径的设置 第二单元MATLAB数据和数值计算(4学时) 1.矩阵的生成 (1)标量的赋值和计算 (2)向量的赋值和计算 (3)矩阵的生成 2.数组运算 (1)数组的加法和减法运算

《matlab基础及其应用教程》笔记

《matlab基础及其应用教程》笔记 前提:已经学过matlab很久了,但是将近半年没有再碰,打算接下去继续学习matlab,并在帮忙增加国内关于matlab资料较少的simmechanics物理建模仿真部分,因此继续开始学matlab,打算重新看基本基础的书回顾一下,并做简单笔记。 plus:括号内是自己加的,自己的经验以及想法等 第一章:基础 1、b='Hi,Miss Black';可以直接用于表示字符串 2、cd可以设置路径;和DOS系统下一样,但是不够直观,推荐直接使用GUI的路径设置 3、clf:清除图像内容;cla:清除坐标内容(GUI会用到);clc,clear 4、lookfor:寻找函数名称;doc:直接打开某个函数的帮助文档(doc quad:打开积分的帮助文档) 第二章:matlab语言基础 1、matlab主要数据类型.pdf(matlab的数据类型,十分重要) 2、&与&&区别:&左右两边都比较;&&只要左边不对,就不进行比较(表示右边有错误也不会管) 3、各种函数比较的最好加上(),以防止因为优先级的问题而被吞 4、线性等分:linspace;对数等分:logspace 5、矩阵标志:①,单下标;②,多下标;③,:表示整行或者整列;④,删除直接使用[]; 6、cat:行/列拼接;reshape:矩阵变换;repmat:行列拼接; 7、一般的函数:matlab函数(自己总结).xls里面有 8、多维数组(三维,图片数组) 第三章:matlab运算 1、polyadd:相加;conv:相乘/卷积;deconv:相除 2、polyval:多项式带入求解;polyvalm:矩阵带入求解 3、roots:多项式求根; 4、poly2sym:多项式转为字符形式;poly:构造多项式 5、interpX:插值与拟合(和《数值计算方法》对应,X不同而采取不同的差值拟合方法) 6、polyfit:生成多项式拟合(偶尔两端会出现Roung现象,使整个设计出现偏差) 7、diff:微分;quad:积分 8、cumsum:积分矩形计算法;trapz:积分梯形计算法;quad:辛普森积分法;quad1:科茨积分法; 9、rref:解矩阵方程 10、jacobi:雅克比迭代法;gseidel:Gauss-Seidel 迭代法; 11、sparse:稀疏矩阵;full:全矩阵;spdiags:对角稀疏矩阵 12、spalloc:分配存储空间(对稀疏矩阵而言) 13、Euler:欧拉法解微分(1:前插;2:后插) 14、ode23:二三阶龙科库塔公式解偏微分;ode45:三四阶龙科库塔公式 第四章:结构数组与细胞数组(感觉暂时用到比较少,所以只是简单浏览了一下) 1、结构数组和C语言的一样,后面加. 2、或者使用struct构建结构数组

MATLAB基础教程 薛山第二版 课后复习题答案

《MATLAB及应用》实验指导书《MATLAB及应用》实验指导书 班级: T1243-7 姓名:柏元强 学号: 20120430724 总评成绩: 汽车工程学院 电测与汽车数字应用中心

目录 实验04051001 MATLAB语言基础 (1) 实验04051002 MATLAB科学计算及绘图 (18) 实验04051003 MATLAB综合实例编程 (31)

实验04051001 MATLAB语言基础 1实验目的 1)熟悉MATLAB的运行环境 2)掌握MATLAB的矩阵和数组的运算 3)掌握MATLAB符号表达式的创建 4)熟悉符号方程的求解 2实验内容 第二章 1.创建double的变量,并进行计算。 (1)a=87,b=190,计算 a+b、a-b、a*b。 clear,clc a=double(87); b=double(190); a+b,a-b,a*b (2)创建 uint8 类型的变量,数值与(1)中相同,进行相同的计算。 clear,clc a=uint8(87); b=uint8(190); a+b,a-b,a*b 2.计算: (1) () sin60o

(2) e3 (3) 3cos 4??π ??? clear,clc a=sind(60) b=exp(3) c=cos(3*pi/4) 3.设2u =,3v =,计算: (1) 4 log uv v (2) () 2 2 e u v v u +- (3) clear,clc u=2;v=3; a=(4*u*v)/log(v) b=((exp(u)+v)^2)/(v^2-u) c=(sqrt(u-3*v))/(u*v) 4.计算如下表达式: (1) ()() 3542i i -+ (2) () sin 28i - clear,clc (3-5*i)*(4+2*i) sin(2-8*i) 5.判断下面语句的运算结果。 (1) 4 < 20 (2) 4 <= 20

MATLAB基础及应用教程

第4章程序设计 在前面我们已经看到,MATLAB不但可以在命令窗直接输入命令并运行,而且还可以生成自己的程序文件,这就是我们通常说的一类以M为后缀的M文件,本章我们就来研究这类文件的形成方法。 M文件可分分为两大类,一是命令式M文件(也称为脚本文件,script),二是函数式M 文件(function)。两类文件的区别在于: (1)命令式文件可以直接运行,函数式文件不能直接运行,只能调用。 (2)命令式文件运行时没有输入输出参量,函数式文件在调用时需要进行输入输出参量设置。 (3)命令式文件运行中可以调用工作空间的数据,运行中产生的所有变量为全局变量。 (4)函数式文件不能调用工作空间的数据,运行中产生的所有变量为局部变量。命令式文件运行中产生的所有变量为全局变量,可以调用和存储到工作空间的数据。 4.1 MATLAB的程序文件-M文件 4.1.1 脚本文件(Scripts) 当我们需要在命令窗进行大量的命令集合运行时,直接从命令窗口输入比较麻烦,这时就可以将这些命令集合存放在一个脚本文件(Scripts)中,运行时只需要输入其文件名就可以自动执行这些命令集合。需要注意的是,脚本文件运行所产生的变量都驻留在MATLAB 的工作空间中,同时脚本文件也可以调用工作空间中的数据。因此,脚本文件所涉及的变量是全局变量。前几章所涉及到的M文件都是这类脚本文件。 编辑一个脚本文件可以直接在命令窗口的左上角打开编辑窗进行编辑。 4.1.2 函数文件(function) 函数式文件(function)的构成 (1)函数定义行: Function [输出参量]=gauss(输入参量) (2): 完成函数的功能。 (3)函数说明。 (4)函数行注。 从上面构成的情况看,函数式文件实际上是完成输入参量与输出参量的转换,这样的转换是由函数文件名为gauss的文件来完成的。函数体的功能必须说明清楚输入参量与输出参量的关系。函数说明是用来解释该函数的功能的,函数行注是对程序行进行说明的。上面(1)和(2)是必须的。 【例4-1】分析下面函数文件。 %一个数列,任意项等于前两项之和,输入项数可以给出这个数列

MATLAB基础与应用教程 习题答案 作者 蔡旭晖 刘卫国 蔡立燕 第1-8章答案

第1章 一、思考题 4. (1) B=A(2:5,1:2:5) (2)A(7)=[] (3) A=A+30 (4)size(A) (5) t(find(t==0))=eps (6)t=reshape(x,3,4) (7)abs('matlab') (8)char(93) 5. A=[97,67,34,10;-78,75,65,5;32,5,-23,-59;0,-12,54,7] (1) B=A(1:3,:) C=A(:,1:2) D=A(2:4,3:4) E=B*C (2)A(find(A>=50 & A<=100)) 二、实验题 =-74/180*pi;y=-27/180*pi; sin(x*x+y*y)/sqrt(tan(abs(x+y)))+pi =::; exp*a).*sin(a+ =[2,4;,5]; log(x+sqrt(1+x.*x))/2 4. A=[3,54,2;34,-45,7;87,90,15];B=[1,-2,67;2,8,74;9,3,0];(1)A*B ans = 129 432 4197 7 -407 -1052

402 591 12489 A.*B ans = 3 -108 134 68 -360 518 783 270 0 (2) A^3 ans = -28917 240246 -4368 137883 -259101 27669 171333 252504 38673 A.^3 ans = 27 157464 8 39304 -91125 343 658503 729000 3375(3)A/B ans = B/A ans = (4)[A,B] ans = 3 5 4 2 1 -2 67

MATLAB基础及其应用教程-周开利-邓春晖课后答案 第七章

1. (1) theta=0:pi/100:2*pi; polar(theta,3*(1-cos(theta))) (点击看大图) (2)t=-3:0.1:3;plot(1.25*exp(-0.25*t)+cos(3*t))

(点击看大图) 2.t=0:0.1:8;plot(1-2*exp(-t).*sin(t));xlabel('Time');ylabel('Amplitude');title('Decaying Ocsillating Exponential')

(点击看大图) 3.x=0:0.1:25;y1=2.6*exp(-0.5*x).*cos(0.6*x)+0.8;y2=1.6*cos(3*x)+sin(x);plot(x,y1,' r--',x,y2)

(点击看大图) 4. x=-3:0.1:3; subplot(1,2,1); y1=sin(2*x).*cos(3*x); plot(x,y1);xlabel('x'); ylabel('y'); title('y=sin2xcos3x'); subplot(1,2,2); y2=0.4*x; plot(x,y2); xlabel('x'); ylabel('y'); title('y=0.4x')

(点击看大图) 5. ezmesh('1/((x+1)^2+(y+1)^2+1)-1/((x-1)^2+(y-1)^2+1)',[-3,3])

(点击看大图) 6. subplot(1,2,1); ezmesh('3*sqrt(1-x*x/25-y*y/16)',[-15,15]); subplot(1,2,2); ezmesh('3*sqrt(1+x*x/25-y*y/16)',[-15,15])

MATLAB基础及其应用教程-周开利-邓春晖课后答案 第六章

第6章习题解答 1. 在命令窗口中输入,一次只能执行一行命令,脚本文件是命令的集中,只需输入脚本文件名,就可以按顺序一次执行所有命令。 2.脚本文件是命令的集中,只需输入脚本文件名,就可以一次执行所有命令,没有输入参数,没有输出参数。文件名可任意取,只需符合变量的定义要求即可。脚本文件中生成的变量是全局变量。 函数文件可以接受参数,也可以返回参数,一般需要由其他语句调用。首行语句必须以function开始,有函数名,文件名必须与函数名一致。函数空间中生成的变量是局部变量。 3. function result=project1(year) if mod(year,400)==0 || (mod(year,4)==0 && mod(year,100)~=0) result='是闰年'; else result='不是闰年'; end 4. function min=comp(x1,x2) min=x1; if x1>x2 min=x2; end 5. (1)在命令窗口输入:k=0;for i=-1000:1000;k=k+1;end;k 即可得出:2001步。 (2)方法同上,10步 6. (1)循环进行的条件是var不是10的倍数,循环结束时,var必是10的倍数,即10 (2)每次循环的结果是:4,16,256,此时,不满足循环条件而退出循环,即var为256 (3)循环条件是var>100,而var的值为3,不满足条件,循环不执行,所以var值不变。 7. 方法1: clear; A=[1 2 3;4 5 6]; fid=fopen('c:\a1.txt','wt'); fprintf(fid,'%d ',A(1,:)); fprintf(fid,'\n'); fprintf(fid,'%d ',A(2,:)); fclose(fid);

MATLAB基础及其应用教程-周开利-邓春晖课后标准答案

MATLAB基础及其应用教程-周开利-邓春晖课后答案

————————————————————————————————作者:————————————————————————————————日期:

第三章习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

分段线性和三次样条插值方法与精确值之差取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 分段线性和三次样条插值方法与精确值之差

MATLAB基础及其应用教程-周开利-邓春晖课后答案

第三章 习题及参考答案 解答: >> p=[1 -1 -1]; >> roots(p) ans = -0.6180 1.6180 解答: 取n=5,m=61 >> x=linspace(0,2*pi,5); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); 01234567 -1.5 -1 -0.5 0.5 1 1.5 >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on

1 2 3 4 5 6 7 -0.4 -0.200.20.4 1 2 3 4 5 6 7 -0.2 -0.100.10.2 分段线性和三次样条插值方法与精确值之差 取n=11,m=61 >> x=linspace(0,2*pi,11); y=sin(x); >> xi=linspace(0,2*pi,61); >> y0=sin(xi); >> y1=interp1(x,y,xi); >> y2=interp1(x,y,xi,'spline'); >> plot(xi,y0,'o',xi,y1,xi,y2,'-.'); 01234567 -1 -0.5 0.5 1 >> subplot(2,1,1); plot(xi,y1-y0);grid on >> subplot(2,1,2); plot(xi,y2-y0);grid on 01234567 -0.05 0.05 01234567 -0.05 0.05 分段线性和三次样条插值方法与精确值之差

相关主题