matlab相关习题讲课讲稿

合集下载

Matlab第2章讲稿

Matlab第2章讲稿
• 矩阵除法运算又左除和右除之分,运算规则 矩阵除法运算又左除和右除之分,
A/B:右除。相当于A*inv(B) :右除。相当于 ( ) A\B: 左除。相当于 左除。相当于inv(A)*B;一般用于求解线性代数 ; 方程组
A=[1 2;3 4]; B=[3 5;8 6]; A./B 和B.\A比较 比较 ans = 0.3333 0.4000 0.3750 0.6667 A/B和B/A比较 和 比较 ans = 0.4545 -0.0455 0.6364 0.1364 ans = 1.5000 0.5000 -7.0000 5.0000
3、数组和矩阵的除运算 、 (1)数组、矩阵与标量间的除法运算:规则是标量 )数组、矩阵与标量间的除法运算: 与数组的每个元素进行除法运算; 与数组的每个元素进行除法运算;矩阵和标量只 有矩阵右除标量可运算(即矩阵/标量 标量)。 有矩阵右除标量可运算(即矩阵 标量)。 (2)数组、矩阵的除法运算:规则不同 )数组、矩阵的除法运算: • 维数相同的两数组除法是对应元素之间相除。 维数相同的两数组除法是对应元素之间相除。 如 A./B(右除)与B.\A(左除)结果相同 (右除) (左除)
2.2.2
数组、 数组、矩阵操作
1、元素提取 、 A是m行n列矩阵 是 行 列矩阵 A(i,j) (i<=m且j<=n)由A中i指定行,j指定列的元素 且 指定行, 由 中 指定行 指定列的元素 A(i,:)由数组或矩阵中 指定行所对应的所有列元素组 由数组或矩阵中i指定行所对应的所有列元素组 由数组或矩阵中 成的子数组 A(:,j)由数组或矩阵中 指定列所对应的所有行元素组 由数组或矩阵中j指定列所对应的所有行元素组 由数组或矩阵中 成的子数组 A(:)由数组 的各个列按从左到右的次序首末相接的 由数组A的各个列按从左到右的次序首末相接的 由数组 一维长列” “一维长列”子数组

MATLAB程序设计主题知识讲座

MATLAB程序设计主题知识讲座
(3) 命令按钮操作。单击MATLAB主窗口工具栏 上旳New M-File命令按钮,开启MATLAB文本编 辑器后,输入M文件旳内容并存盘。
2.打开已经有旳M文件 打开已经有旳M文件,也有3种措施: (1) 菜单操作。从MATLAB主窗口旳File菜 单中选择Open命令,则屏幕出现Open对话 框,在Open对话框中选中所需打开旳M文 件。在文档窗口能够对打开旳M文件进行 编辑修改,编辑完毕后,将M文件存盘。 (2) 命令操作。在MATLAB命令窗口输入 命令:edit 文件名,则打开指定旳M文件。 (3) 命令按钮操作。单击MATLAB主窗口 工具栏上旳Open File命令按钮,再从弹出 旳对话框中选择所需打开旳M文件。
3.try语句 语句格式为:
try 语句组1
catch 语句组2
end try语句先试探性执行语句组1,假如语句组1
在执行过程中出现错误,则将错误信息赋 给保存旳lasterr变量,并转去执行语句组2。
例3-7 矩阵乘法运算要求两矩阵旳维数相容,不然 会犯错。先求两矩阵旳乘积,若犯错,则自动转 去求两矩阵旳点乘。
例3-12 求[100,200]之间第一种能被21整除 旳整数。
程序如下: for n=100:200 if rem(n,21)~=0
continue end break end n
4.循环旳嵌套 假如一种循环构造旳循环体又涉及一种循环构造,就称为 循环旳嵌套,或称为多重循环构造。 例3-13 若一种数等于它旳各个真因子之和,则称该数为 完数,如6=1+2+3,所以6是完数。求[1,500]之间旳全部完 数。
例3-3 求一元二次方程ax2 +bx+c=0旳根。 程序如下:
a=input('a=?'); b=input('b=?'); c=input('c=?'); d=b*b-4*a*c; x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);

MATLAB讲稿——第四章.ppt

MATLAB讲稿——第四章.ppt

P [an an1 a1 a0 ]
二、 多项式行向量的生成方法 1、直接输入法
将多项式的各项系数依降幂次序排放在行 向量的元素位置上。
缺项系数输为0。
2、利用指令生成法 指令 P=poly(AR)
说明:(1)若AR是方阵,则多项式P就是该方阵的 特征多项式;
(2)若AR是行向量,即
AR [ar1 ar2
再例:
>> R=[-0.5 -0.3+0.4i -0.3-0.4i] %根向量
R=
-0.5000
-0.3000 + 0.4000i -0.3000 - 0.4000i
>> P=poly(R) % R的特征多项式
P=
1.0000 1.1000 0.5500 0.1250
>> PPR=poly2str(P,'x') %用习惯的方式显示多项式
例:
>> A=[1 4 7;3 11 6;5 32 68]; >> PA=poly(A) %A的特征多项式
PA =
1.0000 -80.0000 588.0000 -147.0000 >> PPA=poly2str(PA,'s') %用习惯的方式显示多项式
PPA =
s^3 - 80 s^2 + 588 s - 147
PPR =
x^3 + 1.1 x^2 + 0.55 x + 0.125
4.2 多项式运算函数及调用格式
举例
(s2 2)(s 4)(s 1)
例:求
s3 s 1
的“商”和“余”多项式。
>> p1=conv([1 0 2],conv([1 4],[1 1])); %计算分子多

MATLAB选修课讲义八讲

MATLAB选修课讲义八讲

MATLAB选修课讲义第一讲:矩阵运算第二讲:函数作图第三讲:符号演算第四讲:简单编程第五讲:数值计算第六讲:线性代数第七讲:综合实例第一讲:矩阵运算1.基本操作启动退出终止(Alt+. 或Ctrl +C)翻页召回命令分隔符,禁显符;续行符…注释符%设置显示格式format 常用:short,short g,long 清除变量clear关闭图形close清除图形clf演示Demo帮助help2.基本常数pi I j inf eps NaN exp(1)3.算术运算+ - * /, \, ^ sqrt .*./.^4.内部函数(一般都有数组运算功能)sin(x) tan(x) asin(x) atan(x)abs(x) round(x) floor(x) ceil(x)log(x) log10(x) length(v) size(A) sign(x) [y, p]=sort(x)5.矩阵运算(要熟练掌握)(1)矩阵生成:手工输入:[1 2 3; 4 5 6]; 1:2:10输入数组: linspace(a, b, n)命令输入:zeros(m,n) ones(m,n) eye(n)magic(n) rand(m, n)diag(A) diag ( [a11 a22 . . . a nn] ) (2)矩阵操作赋值A(i, j) =2 A(2, :)=[1 2 3]删除A( [2,3], :)=[ ] 添加A(6,8)=5定位find(A>0) 定位赋值A(A<0)= -1 由旧得新B=A([2,3,1], :) B=A([1,3],[2,1])矩阵拼接C=[A, B] C=[A; B]定位矩阵B=(A>1) B=(A==1)下三角阵tril(A) 上三角阵triu(A)左右翻转fliplr(A) 上下翻转flipud(A)重排矩阵reshape(A, m, n)(3)矩阵运算:转置A’和A+B 差A-B 积A*B左除A\b(=A-1 b)右除b/A(=b A-1 )幂A^k点乘A.*B 点除A./B 点幂A.^2行列式det(A) 数量积dot(a,b) 向量积cross(a,b)行最简形rref(A) 逆矩阵inv(A) 迹trace(A)矩阵秩rank(A) 特征值eig(A) 基础解系null(A,’r’) 方程组特解x=A\b注意:2+A,sin(A)练习一:矩阵操作1、用尽可能简单的方法生成下列矩阵:102000100012101/21/31/1112040022002311/31/41/12,,,0330600054082210010191/111/121/20000750⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥--⎣⎦⎣⎦⎣⎦⎢⎥-⎣⎦2、设有分块矩阵⎪⎪⎭⎫ ⎝⎛=⨯⨯⨯2232233S O R E A ,⎪⎪⎭⎫⎝⎛⋅=⨯⨯⨯23222233E O J R E B ,其中23,E E 是单位矩阵,32⨯O 是零矩阵,23⨯R 是随机矩阵,⎪⎪⎭⎫ ⎝⎛=⨯011022S ,J是2阶全1矩阵,验证B A =2。

MATLAB讲稿_11

MATLAB讲稿_11

MATLAB程序设计基础
三.图形用户界面编程例子
使用函数编写程序,实现上面通过菜单生成 使用函数编写程序, 器实现的功能。 器实现的功能。
MATLAB程序设计基础
三.图形用户界面编程例子
findobj函数 函数 findobj(父窗体句柄 属性名 属性值 父窗体句柄,属性名 属性值) 父窗体句柄 属性名,属性值 综合例子 用户名密码的校验
MATLAB程序设计基础
三. 图形用户界面编程例子
控件对象 uicontrol(窗体句柄 属性名 属性值 窗体句柄,属性名 属性值……) 窗体句柄 属性名,属性值 h3=uicontrol(h,... 'string', '清空 ... 清空', 清空 'position',[10,10,80,50], ... 'fontsize',20, ... 'callback','cla');
应用软件基础
第一部分:MATLAB的使用 MATLAB 主讲:刘国际
MATLAB的使用
第三章:图形处理
MATLAB程序设计基础
MATLAB程序设计基础
三. 图形用户界面编程例子
set函数、get函数 函数、 函数 函数 set(对象句柄 属性名 属性值 对象句柄,属性名 属性值……) 对象句柄 属性名,属性值 get(对象句柄 属性名 对象句柄,属性名 对象句柄 属性名) h=figure; set(h,‘position’,[10,10,200,200],‘menu’,‘none’ ,‘name’,‘set函数的使用 函数的使用','numbertitle','off') 函数的使用

Matlab第3章讲稿

Matlab第3章讲稿

2.符号表达式的提取分子和分母运算 . 格式: 格式:[n,d]=numden(s) 功能:函数提取符号表达式s的分子和分母 的分子和分母, 功能:函数提取符号表达式 的分子和分母, 分别将它们存放在n与 中 分别将它们存放在 与d中。
a* x / y + b* y / x
G(s) = 5( s + 1) s 2 ( s + 3)
3.2.2
diff(s) diff(s,’x’,n) diff(s,‘x’) diff(s,n)
符号导数
如: >> f=sym('sin(w*t+pi/3)'); >> F1=diff(f,'t')
3.2.3
符号积分a,b)
调用格式为: 调用格式为: int(‘被积表达式’,‘积分变量’,‘积分 积分变量’ ( 被积表达式’ 下限’ 下限’, 积分上限') ‘积分上限 )—— 定积分 ——缺省时为不定积分 缺省时为不定积分 > >> syms a x b >> f=1/(a*x+b) >> int(f,x) >> int(f,x,2,10) ans = (log(10*a+b)-log(2*a+b))/a ans = log(a*x+b)/a
练习:
已知 f
= cos(3 arccos x),试将其展开
4、符号表达式的化简 、
simplify(s): : simple(s): :
2 2 例3 已知数学表达式 y ( x) = 2 cos x − sin x, 试将其进 行简化。 行简化。
5、subs函数用于替换求值 、 函数用于替换求值

matlab习题详解讲解学习

matlab习题详解讲解学习

实验二、矩阵的基本运算一、 问题已知矩阵A 、B 、b 如下:⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-------------=031948118763812654286174116470561091143A ⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡------=503642237253619129113281510551201187851697236421B []1187531=b应用Matlab 软件进行矩阵输入及各种基本运算。

二、 实验目的:熟悉Matlab 软件中的关于矩阵运算的各种命令三、 预备知识1、线性代数中的矩阵运算。

2、本实验所用的Matlab 命令提示:(1)、矩阵输入格式:A =[a 11, a 12; a 21, a 22];b =初始值:步长:终值;(2)、求A 的转置:A';(3)、求A 加B :A +B ;(4)、求A 减B :A -B ;(5)、求数k 乘以A :k*A ;(6)、求A 乘以B :A*B ;(7)、求A 的行列式:det (A );(8)、求A 的秩:rank (A );(9)、求A 的逆:inv (A )或(A )-1;(10)、B 右乘A 的逆:B/A ;(11)、B 左乘A 的逆:A \B ;(12)、求A 的特征值:eig (A );(13)、求A 的特征向量矩阵X 及对角阵D :[X ,D ]=eig (A );(14)、求方阵A 的n 次幂:A ^n ;(15)、A与B的对应元素相乘:A.*B;(16)、存储工作空间变量:save '文件名' '变量名';(17)、列出工作空间的所有变量:whos;四、实验内容与要求1、输入矩阵A,B,b;2、作X21=A'、X22=A+B、X23=A-B、X24=AB;3、作X31=|A|、X32=|B|;4、作X41=R(A)、X42=R(B);5、作X5=A-1;6、求满足矩阵方程XA=C的解矩阵X6,其中C为A的第i列乘以列标i所得矩阵;7、求满足方程AX=b的解向量X7;8、作X6的特性向量X8、X6的特征向量组X及对角阵D;9、作X9=B2 (A-1)2;10、创建从2开始公差为4的等差数列前15项构成的行向量X10。

Matlab讲稿

Matlab讲稿

第一讲首先对matlab作一个简单介绍。

1.who与whoswho显示变量名;whos显示变量具体信息;clear清除所有变量。

2.变量的输出输入例:a=eye(3);续行:a=1+2+…3+4+…5+6等价于a=1+2+3+4+5+6。

3.①矩阵的输入例:A=[16 3 2 13;5 10 11 8;9 6 7 12]②矩阵求和sum(A)(求各列的和)③转置A‟但当A为复数矩阵或向量时,A‟为复共轭矩阵,A.‟才是普通转置④提取矩阵对角线元素diag(A)⑤矩阵的下标第i行、第j列的元素用A(i,j)表示;例:A(1,1)为16。

有时为方便直接用A(i)表示元素,它表示矩阵A中从第一列开始从上到下数,接着在从第二列开始从上到下数,依次下去,直到数到第i个。

例:A(5)=10⑥矩阵的冒号运算符1:10表示从1到10这十个数1:2:10表示从1到10每隔2取一个数例:sum(A(1:3,1))=30(有时冒号本身就是一行或一列,例:A(1,:))4.表达式的组成①变量I:以字母为开头,后跟字母、数字、下划线。

II:长度不超过31。

III:区分大小写。

②数值③运算符(规则同c语言类似)+、-、*、/(加、减、乘、除)\(反除)例:4/2=2\4^(乘方)④函数sin cos exp abs sqrt常见变量列表pi 圆周率、i 虚数单位,同j、inf 无穷大、NaN 为非数(Not a number)第二讲例:a=zeros(2,4)、a+2、a*5取整fix2.矩阵和数组的基本运算矩阵的合并B=[A A*1 ;A*2 A*3]矩阵的删除A=1 2 34 5 67 8 9X=AX(:,2)=[]X=1 34 67 9注:如要删除单个元素不能这样A(1,2)=[ ];可用A(4)=[ ]不过剩下的元素将排成一组数,而非矩阵。

3.乘法4.范数1)向量ppi x x 1)(∑=对1>p 的实数都成立。

MATLAB讲稿及入门学习课件

MATLAB讲稿及入门学习课件
应用软件基础
绪论
绪论
一.计算机发展简史 二.什么是软件 三.软件的分类 四.本门课程的主要内容
绪论
一.计算机发展简史
计算机发展简史
第一台计算机
产生时间:1946年 产地:美国宾夕法尼亚大学 名称:ENIAC 名称含义:
Electronic Numerical Integrator and Calculator 电子数字积分器和计算器
有的微型计算机把CPU、存储器和输入/输出接口电路 都集成在单片芯片上,称之为单片微型计算机,也叫 单片机。
计算机发展简史
微型计算机系统是指以微型计算机为中心,以 相应的外围设备、电源、辅助电路(统称硬件) 以及控制微型计算机工作的系统软件所构成的 计算机系统。
自从微处理器和微型计算机问世以来,它就得 到了异乎寻常的发展,大约每隔2~4年就更新 换代一次。至今,经历了三代演变,并进入第 四代。微型计算机的换代,通常是按其CPU字 长和功能来划分的
这类16位微型机通常都具有丰富的指令 系统,采用多级中断系统、多重寻址方 式、多种数据处理形式、段式寄存器结 构、乘除运算硬件,电路功能大为增强, 并都配备了强有力的系统软件。
计算机发展简史
第四代(1985年以后):32位高档微型机 目前,CPU已经进入了多核的时代,64
位微机也开始渐渐走入视野。
计算机发展简史
计算机发展的几个阶段
第三代(1964-1971):集成电路数字 计算机
20世纪60年代,计算机的逻辑元件 采用小、中规模集成电路(SSI、MSI), 计算机的体积更小型化、耗电量更少、 可靠性更高,性能比第二代计算机又 有了很大的提高,这时,小型机也蓬 勃发展起来,应用领域日益扩大。
部分应用软件介绍

Matlab试题及答案讲课稿

Matlab试题及答案讲课稿

Matlab试题及答案讲课稿《Matlab 软件实训》⼀、训练⽬的1、熟悉Matlab ⼯具软件的开发环境2、掌握Matlab 的⼀些常⽤命令3、掌握Matlab/Simulink 建模仿真的⽅法⼆、训练内容1、利⽤命令进⾏各种相关数学计算;2、编写M ⽂件实现各种相关数学计算;3、利⽤Simulink 建模并仿真;三、训练任务1、解⽅程:Ax=B ,其中,A=------5407395012818053,B=-6120 本题解决思路:这是⼀个简单的数组运算,核⼼点在于数组的输⼊⽅法和⼀些基本的数组运算基础,本题中需要注意的是左除与右除的区别。

命令如下>> A=[-3 5 0 8;1 -8 2 -1;0 -5 9 3;-7 0 -4 5] A =-3 5 0 8 1 -8 2 -1 0 -5 9 3 -7 0 -4 5>> B=[0;2;-1;6] B =0 2 -1 6>> X=A\BX =-0.6386-0.4210-0.35290.02372、数值运算已知某班的5名学⽣的三门成绩如下:序号 1 2 3 4 5⾼数78 89 64 73 68外语83 77 80 78 70电路82 91 78 82 68试写出有关命令,先分别找出三门课的最⾼分及其学⽣序号,然后找出三门课总分的最⾼分及其学⽣序号。

本题解决思路:详细的分析题⽬,可以发现本题就是⼀个多组求最⼤值并输出的问题。

有三个核⼼点,第⼀点是求最⼤值问题。

第⼆点是如何将多组最⼤值问题合并在⼀个程序中解出,第三点是输⼊和输出的⽅法。

最⼤值我采⽤了MA TLAB中的max命令,其实也可以采⽤⾃⼰编写M⽂件的⽅法,但是程序越精简运⾏越快,我选择了⾃带命令。

第⼆个问题我采⽤了⼀个for和if配合的循环判断的语句。

第三个问题我采⽤disp输出,并⽤num2str将字符串转换输出。

程序如下a=input('⾼数成绩');b=input('英语成绩');c=input('电⼯成绩');for i=1:3if i==1[y1,t1]=max(a,[],2);else if i==2[y2,t2]=max(b,[],2);else[y3,t3]=max(c,[],2);endendends=a+b+c;[y4,t4]=max(s,[],2);disp(['⾼数最⾼分是',num2str(t1),'号',num2str(y1),'分'])disp(['英语最⾼分是',num2str(t2),'号',num2str(y2),'分'])disp(['电⼯最⾼分是',num2str(t3),'号',num2str(y3),'分'])disp(['总分最⾼分是',num2str(t4),'号',num2str(y4),'分'])⾼数成绩[78 89 64 73 68]英语成绩[83 77 80 78 70]电⼯成绩[82 91 78 82 68]⾼数最⾼分是2号89分英语最⾼分是1号83分电⼯最⾼分是2号91分总分最⾼分是2号257分 >>3、建⽴M ⽂件,计算积分y=20sin πxdx ;M ⽂件如下function [ y ] = J( a,b ) syms xy=int(sin(x),x,a,b) end在命令⾏中输⼊J(0,pi/2) 运算得出结果 >> J(0,pi/2) y = 1ans = 14、建⽴M ⽂件,在[0 2π]范围内绘制⼆维曲线图y=)5cos(*)sin(x x本题解决思路:在M ⽂件中要有输⼊变量和输出量,分析本题得知,本题的x 并不是输⼊⽂件,他是⼀个中间变量,真正的输⼊变量其实是x 的输⼊范围,定义变量为(a,b),确定这个以后直接调⽤MATLAB 中的内置命令求解。

MATLAB讲稿·基础_PPT幻灯片

MATLAB讲稿·基础_PPT幻灯片
25
2.1 基本概念
1、变量和标量*
变量是MATLAB保存数据的工具。 变量有数值和字符两种:a=365;b=‘happy new year’ 变量命名遵守如下规则:
必须以字母开头。 可以由字母、数字和下划线共同组成。 区分大小写。 长度不超过19个。
标量是相对于向量的概念,一个单一的数字量即是标量。
显示形式 35.8333 35.83333333333334 3.5833e+001 3.583333333333334e+001 35.833 35.8333333333333 4041eaaaaaaaaaac 35.83 + 215/6
说明
2位整数,4位小数(默选)
16位十进制数,14位小数 5位十进制数,加指数 16位十进制数,加指数 5位十进制数 15位十进制数 16位十六进制数 保留2位小数 决定数字正、负、零 用分数近似
例二:绘制函数f(x,y)=2sin(
)/
x=-8:0.5:8;
x2 y2
x2 y2
y=x;
[X,Y]=meshgrid(x,y);
R=sqrt(X.^2+Y.^2)+eps;
Z=2*sin(R)./R;
surf(X,Y,Z)
的图形。
21
1.4 演示程序及帮助
一、演示程序
1、什么是演示系统 演示系统实质是一种帮助系统;与一般帮助系统不同
2、帮助菜单
23
第二章 MATLAB数值计算
2.1 基本概念 2.2 矩阵的创建与保存 2.3 矩阵的下标与子矩阵 2.4 矩阵运算与数组的运算 2.5 矩阵运算函数与数学函数 2.6 关系运算及逻辑运算 2.7 多项式及其运算

《MATLAB第二讲》PPT课件

《MATLAB第二讲》PPT课件
有了足够多的函数,可以生成一个工具箱,放在一个固定的目录下,并在MATLAB中 加入这个目录路径即可。
37
2 参数传递
在MATLAB中,参数具有自己的专有工作空间。函数中 的参数和命令行参数不在一个空间中,它们的唯一联系 为函数的输入输出变量。输入参数在函数中是可读的, 但在函数中的任何改动不会传递回上一级空间。
35
• 下面举一个递归调用的例子 function y=factorial(k) if k>1
y=k*factorial(k-1); elseif k==1
y=1; elseif k==0;
y=1; else error('输入参数只能为非负整数') end %大家试着读读这是用来求这么的函数
36
11
1.创建m文件
• 这三行命令可以在command window中输入并且执行,但是如果想保存 起来,以便下次使用,需要编辑成m文件
12
• 2.保存m文件:File Save As
13
关于保存路径:一般默认 在安装路径matlab7\work,
也可以保存在自己需要的 路径
把这个m文件命名为graph_sin.m存放在 c:\matlab7\work中
x=0:2*pi/180:2*pi; %x为一个行向量,第一个元素为0,最后一个元素为2π,步长2π/180 y=sin(x); %y也为一个向量,每个元素是x对应元素的正弦值 plot(x,y) %画图,x中的元素为横坐标,y中相应的元素为纵坐标 %所以在本例中画的是y=sinx的图像,自变量取值[0, 2π]
19
2.1.4 函数m文件
• 一.函数m文件的几种格式及调用 • 格式1(无返回值函数) function 函数名(输入表) %称为函数头 函数体

matlab讲稿 第二讲

matlab讲稿 第二讲

A(i,j,k,:)
A(:)
2.5 操作和特殊字符
3.特殊字符
[] 用于形成向量和矩阵,空格用于行元素的间 隔,分号或回车表示一行的结束。 []内还可以采用矩阵和向量, 例如只要A、B、C 的维数适当,就可利用D=[A B; C]产生更大的 矩阵。
A=[]表示产生空矩阵A A(m, :)=[]表示从A中删去第m行 A(:, n)=[]表示从A中删去第n列 A(:)表示将A重新排列成列向量
2.5 操作和特殊字符
A′可求出矩阵转置, 对复数阵A, 则可 求出其复共轭转置; A.′可求出阵列转置, 对复数阵A也不涉 及到共轭运算。
2.5 操作和特殊字符
2. 冒号(∶) 冒号是MATLAB中最常用的操作符之一, 它 可用于建立向量、 下标阵列和迭代。
表 2.3 冒号使用格式(1) 格式 j:k j:k j:i:k j:i:k 功 能 当j<=k时,等同 于[j, j+1,…,k] 当j>k时为空 等同于[ j+i, j+2i, …, k] j, 当i>0且j>k, 或者 i<0且j<k时为空
4.关系操作符 关系操作符可完成两个阵列之间元素对元素的比 较,其结果为同维数的阵列。当关系成立时相应 的元素置为逻辑真(1),否则置为逻辑假(0)。 操作符<、<=、>、>=只用于比较操作数的实部, 而==、~=用于比较实部和虚部。 测试两个字符串是否相同可采用strcmp, 这时 可比较不同长度的字符串。 strcmpi将忽略大小写 strncmp,strncmpi可以比较前n个字符
2.6 基本矩阵和矩阵操作
阵 作 矩 操 diag reshape rot90 fliplr flipud tril triu cat repmat 功 能 对 矩 角 阵和 阵 矩 的对 角 化 阵 列重 新排 列 矩 阵旋 转90° 矩 阵左 右翻 转 矩 阵上 下翻 转 矩 的下三 阵 阵 角 矩 的上三 阵 阵 角 阵列 接 连 复 并平铺 列 制 阵

MATLAB讲稿_1.2-常量与变量

MATLAB讲稿_1.2-常量与变量

变量


matlab关于变量的语法:变量使用前不需 要定义,但变量使用前必须赋值,程序执 行过程中,变量的值、类型都可以改变。 C、java等语言关于变量的语法:变量使用 前必须先定义,变量使用前应该先赋值, 程序执行过程中,变量的值可以改变,但 类型不能改变。
变量

2.2.3 变量命名规则 区分大小写 长度限制为31位 字母开头,可以包括字母、数字、下 划线
变量

2.2.3 变量命名规则 正确的变量名: a、x1、stuOfPhy、stu_phy 错误的变量名 1x、@y、_stu、
常量
2.1.3 关于自定义常量:
matlab中只提供软件预先定义好的几lab中的预定义常量可以被覆盖。
常量
常量
>> pi='ab' pi = ab
>> pi=8 pi = 8 >> clear >> pi ans = 3.1416
基本语法
2 常量与变量

应用软件基础
第一章:基本语法
基本语法
2、常量与变量 2.1 常量 2.1.1 常量的定义:
程序运行过程中,值不能发生变化 的数据。 一个具体的数据就是一个常量,如: ’abc’、 3、[1 2 3;4 5 6]
基本语法
2、常量与变量 2.1 常量 2.1.1 常量的定义:
matlab中定义了几个常量: pi eps i、j 具体含义见教材p6 表1.3-1
常量
2.1.2 常量的用途:
为变量赋值 命名常量可以简化程序编写和修改 提高程序可读性 避免程序错误
常量
2.1.3 关于自定义常量:

名师推荐MATLAB讲稿8

名师推荐MATLAB讲稿8
例子:P127例7-2
MATLAB程序设计基础
一.图形制作步骤
2. 选定作图窗口和作图区域(即figure和 subplot命令的使用)
② subplot命令用于选定作图区域
用法: subplot(m,n,i); 把当前窗口分为m*n个作图区域,并把当前作图区 域选定为第i个区域,即floor(i/m)行、mod(i,m) 列。 subplot(‘position’,[l b w h]);
1.4、坐标转换函数 pol2cart
1.5、双轴图
plotyy
MATLAB程序设计基础
二. 根据数据点作图
2. 其他图形
2.1、饼图 2.2、条形图 2.3、针状图 2.4、向量场图 2.5、羽状图 2.6、罗盘图 2.7、玫瑰花图 2.8、等值线图 2.9、面积图 2.10、柱状图 2.11、拓扑图 2.12、阶梯图 2.13、误差条形图 2.14、彗星图
MATLAB程序设计基础
一.图形制作步骤
2. 选定作图窗口和作图区域(即figure和 subplot命令的使用)
② subplot命令用于选定作图区域
用法:subplot(m,n,i); 把当前窗口分为m*n个作图区域,并把当前作图区 域选定为第i个区域,即floor(i/m)行、mod(i,m) 列。
在调用作图命令或函数时,图形已经显示出来。在这一步可以把 图形形成图片文件,保存起来,或者导入其他程序中使用。
MATLAB程序设计基础
二.根据数据点作图
1. 线形图
1.1、直角坐标系 plot,plot3
1.2、对数坐标系 loglog,semilogx,semilogy
1.3、极坐标系 polar
MATLAB程序设计基础

Matlab第四章讲稿

Matlab第四章讲稿

4.1 逻辑运算符条件数学符号MATLAB 符号关系运算符等于 = == 不等于 ≠ ~= 小于 < < 大于 > > 小于等于 ≤ <= 大于等于≥>= 逻辑运算符与 AND & 或 OR ︳ 非NOT~t=-1:0.25:1; step=(t>=0); disp('t step')disp([t' step'])4.2 程序流程控制4.2.1 分支-if 语句i=input('i=');j=input('j=');if j==1z=10; if i<=4 m=1; n=2; else m=3; n=4; end else z=6 m=5; n=6; end 建议控制结构命令与end 命令对齐, 中间部分缩进,形成一个锯齿状结构 (内部嵌套也采用锯齿状结构) i=8 if j==1 z=10; if i<=4 4.2.3 for 循环 常见结构: for 变量=表达式 循环语句 end 例:创建(8×8)阶矩阵,所有元素值都为1或-1,且每个元素符号都与四周相邻的元素符号不同。

n=8; k=1:n; M=zeros(8,8); oddrow=(-1).^k; evenrow=(-1).^(k-1); for m=1:2:n 4.2.4 while 循环 例:num=input('enter'); while(num<1)|(num>8) num=input('enter'); num=input('warn') end 4.2.5 for 循环或while 循环的提前终止(break 函数) 若break 函数嵌套于for 循环或while 循环内部,则返回上一级的for 循环或while 循环。

4.2.2 分支-switch 语句(if-elseif-else-end ) clc clear all k=4;a=3; switch kcase 1disp('case1')case {2,3}disp('case23')case a^2disp('9')otherwisedisp('other')endclcm=1;n=2;elsem=3;n=4;endelsez=6m=5;n=6;end42. x为磨床冷却液温度传感器得到的温度值(这里用18~28的随机数代替),如果温度在21°-25°之间,在监控器上显示“温度正常”,低于21°显示报警“磨削液温度过低”,高于25°显示报警“磨削液温度过高”3.某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用price来表示):price<200 没有折扣200≤price<500 3%折扣500≤price<1000 5%折扣1000≤price<2500 8%折扣2500≤price<5000 10%折扣5000≤price 14%折扣输入所售商品的价格,求其实际销售价格。

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

m a t l a b相关习题1.已知A=[0 9 6;1 3 0];B=[1 4 3;1 5 0];写出下列各指令运行的结果。

A &B 的运行结果ans= ;A ./B 的运行结果ans= 。

2. 产生4阶全0方阵的命令为 zeros(4) ;产生3阶全1方阵的命令为 ones(3) 。

3. A=rand(2,5);b=size(A);c=length(A);则b和c的值分别为和[2,5],[5] 。

4. 标点符号分号可以使命令行不显示运算结果,百分号用来表示该行为注释行。

5. 用if判断语句判断80≥ x >60,在MATLAB中if语言后的判断应写为 ifx<=80&x>60 。

6. P, Q分别是个多项式的系数矢量,求P对应的多项式的积分(对应的常数项为K),使用的命令是 polyint(P,K) ;求P/Q的解,商和余数分别保存在k和r,使用的命令是 [k,r]=deconv(P,Q) ;7.为了使两个plot的图形在同一个坐标显示,可以使用 hold on 命令进行图形保持;可以使用 grid on 命令为图形添加网格。

8. MATLAB的工作空间中有三个变量v1, v2, v3,写出把它们保存到文件my_data.mat 中的指令 save my_data ;写出把my_data.mat文件中的变量读取到MATLAB工作空间内的指令 load my_data 。

二、选择题(每空2分,总共20分)1.下列哪个变量的定义是不合法的 A(A) abcd-3 (B) xyz_3 (C) abcdef (D) x3yz2.下列哪条指令是求矩阵的行列式的值 C(A) inv (B) diag (C) det (D) eig3.在循环结构中跳出循环,执行循环后面代码的命令为 B(A) return (B) break (C) continue (D) keyboard4. 清空Matlab工作空间内所有变量的指令是 C(A) clc (B) cls (C) clear (D) clf5.用round函数四舍五入对数组[2.486.39 3.93 8.52]取整,结果为 C(A) [2 6 3 8] (B) [2 6 4 8] (C) [2 6 4 9] (D) [3 7 4 9]6.已知a=2:2:8, b=2:5,下面的运算表达式中,出错的为 C(A) a'*b (B) a .*b (C) a*b (D) a-b7.角度[]60x,计算其正弦函数的运算为D45=30(A) SIN(deg2rad(x)) (B) SIN(x) (C) sin(x) (D) sin(deg2rad(x))8.下面的程序执行后array的值为 ( A )for k=1:10if k>6break;elsearray(k) = k;endend(A) array = [1, 2, 3, 4, 5, 6] (B) array = [1, 2, 3, 4, 5, 6, 7, 8, 9,10](C) array =6 (D) array =10.9.i=2; a=2i; b=2*i; c=2*sqrt(-1); 程序执行后;a, b, c的值分别是多少?(A)a=4, b=4, c=2.0000i (C)(B)a=4, b=2.0000i, c=2.0000i(C)a=2.0000i, b=4, c=2.0000i(D) a=2.0000i, b=2.0000i, c=2.0000i10. 求解方程x4-4x3+12x-9 = 0 的所有解(A)1.0000, 3.0000, 1.7321, -1.7321(B)1.0000, 3.0000, 1.7321i, -1.7321i(C)1.0000i, 3.0000i, 1.7321, -1.7321(D)-3.0000i, 3.0000i, 1.7321, -1.7321三、写出程序的执行结果或写出给定要求的指令(总共35分)1.写出执行以下代码后C,D,E的值 (6分)A=[1,2,3;4:6;7:9];C=[A;[10,11,12]],D=C(1:3,[2 3])E=C(2,[1 2])2.写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值 (5分)x=[0,1,0,2,0,3,0,4];for k=1:8if x(k)==0x(k)=k;elsex(k)=2*k+1;endenddisp(x);3.创建符号函数并求解,要求写出步骤和运行结果(7分)(2)求f=0的解4. 求解以下线性方程组,要求写出程序代码和运行结果(5分)2x1- 3x2+ x3+2x4=8x1+3x2+ x4=6x1- x2+ x3+8x4=17x1+ x2-2x3+2x4=55.绘制函数曲线,要求写出程序代码(12分)(1)在区间[0:2π]均匀的取50个点,构成向量π(2)在同一窗口绘制曲线y1=sin(2*t-0.3); y2=3cos(t+0.5);要求y1曲线为红色点划线,标记点为圆圈;y2为蓝色虚线,标记点为星号四、使用MATLAB语言进行编程(15分)打印出所有的水仙花数。

所谓“水仙花数”,是指一个三位数,其各位数字立方之和等于该数本身。

一、填空题1、ans =0 1 11 1 0ans =0 2.2500 2.00001.0000 0.6000 NaN2、 zeros(4) ones(3)3、 [ 2 5 ] [ 5 ]4、;%5、 if x<= 80 & x>606、 polyint(P,K) [k,r]= deconv (P,Q)7、 hold on grid on8、 save my_data Load my_data二、选择题1、 A2、 C3、 B4、 C5、 C6、 C7、 D8、 A9、 C10、 A三、写出程序的执行结果或写出给定要求的指令1、 c = 0 + 2.0000iD =2 35 68 9E =4 52、1 5 3 9 5 13 7 173、>> syms a b c x>> s = a*x^2 + b*x + c;>> solve(s)ans =[ 1/2/a*(-b+(b^2-4*a*c)^(1/2))][ 1/2/a*(-b-(b^2-4*a*c)^(1/2))]4、>> syms a b c x>> syms x1 x2 x3 x4>> clear>> syms x1 x2 x3 x4>> f = 2*x1 + 3*x2 + x3 + 2*x4 -8; >> g = x1 + 3*x2 + x4 - 6;>> h = x1 - x2 + x3 + 8*x4 - 1; >> i = 7*x1 + x2 - 2*x3 + 2*x4 -5; >> [x1,x2,x3,x4] = solve(f,g,h,i) x1 =13/17x2 =320/187x3 =212/187x4 =19/1875、t = linspace(0, 2*pi, 50);plot(t,y1,'r-o' ,t,y2,'b--*'); 四、使用MATLAB语言进行编程for k = 100:999a = fix(k/100);b = rem(fix(k/10),10);c = rem(k,10);if a.^3 + b.^3 + c.^3 == kfprintf( “%u,\t\t”, k ) ;endendMatlab 测试二一、填空题1、MATLAB常用操作界面包括命令窗口、工作空间窗口、命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。

2、MATLAB中Inf或inf表示无穷大、NaN或nan表示不是一个数、nargout表示函数输出变量数目。

3、工作空间浏览器主要用于内存变量的查阅、保持和编辑。

4、MATLAB实现将全下标转换为单下标的指令为 sub2ind 、据单下标换算出全下标的指令为 ind2sub 。

5、MATLAB中clf用于清除图形窗口、clc用于清除指令窗口中显示内容、clear用于清除MATLAB工作空间中保存的变量。

二、简答题(每题5分,共20分)1、简述MATLAB历史指令窗的主要作用。

答:历史指令窗记录着用户在MATLAB指令窗中所输入过的所有指令。

历史记录包括:每次开启MATLAB的时间,每次开启MATLAB后在指令窗中运行过的所有指令。

应用功能有单行或多行指令的复制和运行、生成M文件等。

2、简述MATLAB函数的基本结构。

答:典型M函数文件的结构:函数申明行、H1行、在线帮助文本区、编写和修改记录、函数体。

3、简述绘制二维图形的一般步骤。

绘制二维图形的一般步骤为:曲线数据准备、选定图形窗及子图位置、调用二维曲线绘图指令、设置轴的范围、坐标分格线、图形注释、图形的精细操作。

三、阅读程序并回答问题(每题4分,共28分)1、写出下列指令运行结果。

A=zeros(2,4);A(:)=1:8;s=[2 3 5];A(s)Sa=[10 20 30]'A(s)=Saans =2 3 52030A =1 20 30 710 4 6 82、写出下列指令运行结果。

A=reshape(1:16,2,8)reshape(A,4,4)s=[1 3 6 8 9 11 14 16];A(s)=0A =1 3 5 7 9 11 13 152 4 6 8 10 12 14 16 ans =1 5 9 132 6 10 143 7 11 154 8 12 16A =0 0 5 7 0 0 13 152 4 0 0 10 12 0 03、写出下列指令运行结果。

A=[1,2;3,4];B=[-1,-2;2,1];S=3;A.*Bans =-1 -46 4A*Bans =3 05 -2S.*Aans =3 69 12-3 -66 34、下面的函数主要完成什么功能?function f=factor(n)if n<=1f=1;elsef=factor(n-1)*n;end利用函数的递归调用求n!5、写出下列指令运行结果。

ch=‘ABc123d4e56Fg9’;subch=ch(1:5)revch=ch(end:-1:1)k=find(ch>=‘a’&ch<=‘z’);ch(k)=ch(k)-(‘a’-‘A’);char(ch)subch =ABc12revch =9gF65e4d321cBAans =ABC123D4E56FG9ans =46、写出下列指令运行结果。

相关文档
最新文档