




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
4.MATLAB高级数值计算关系运算和逻辑运算字符串及其相关函数多项式的定义和运算1一、关系运算和逻辑运算MATLAB把非0数值当作真,把0当作假。对于真,输出为1。对于假,输出为0。
【例】:
>>5<3
ans=02关系操作符
关系符号意义<<=>>===~=小于小于或等于大于大于或等于等于不等于3>>A=123456789>>B=987654321>>A>=Bans=000011111【例1】关系运算4>>A=123456789>>B=987654321>>T=(A==B)T=000010000=和==含义不同!前者是用于赋值,后者用来比较。【例2】关系运算5逻辑操作符
逻辑操作符意义&|~与或非6运算法则
a&b:a和b全是非0时,结果为1,否则为0。
a|b:a和b中只要有一个非0,结果为1,否则为0。~a:a是0时,结果为1,否则为0。7A=123456789>>T=~(A>4)T=111100000>>T=(A>2)&(A<8)T=001111100【例】逻辑运算8&和&&同为逻辑“与”运算,但有所区别。【例】:&&的优点>>b=0;>>(b~=0)&(1/b>5)Warning:Dividebyzero.ans=0>>
(b~=0)&&(1/b>5)ans=0&和&&9其他关系与逻辑函数函数名称函数功能all(x)若向量的所有元素非零,则结果为1any(x)向量中任何一个元素非零,结果就为1find(A)找出向量或矩阵中非零元素的位置xor(x,y)异或运算,x和y同为真或同为假则为0,否则为1这里特别重要的是find
函数10【例】:已知矩阵找出在区间[5,10]内的元素的位置。>>s=find(A>=5&A<=10);s'=491116find函数11二、字符和字符串MATLAB中关于字符串有以下几点规则:所有字符串都用单引号界定后输入或赋值
如:s='Hello'字符串每个字符都对应矩阵的一个元素如上述变量s就是一个1×5的矩阵,size(s)12字符以ASCII码储存。用abs
指令可看到相应的值abs(s)=72101108108111可以用指令setstr
实现ASCII码值向字符的转换
>>setstr([72101108108111]) ans= Hello字符变量也可以用方括号合并成更大的“串” s=[s,'world'] s=
Helloworld字符串13MATLAB常用字符串函数函数名称函数功能isstr判断是否是字符串findstr从一个字符串中寻找另一个字符串upper将字符串变为大写形式lower将字符串变为小写形式num2str将数字变为字符串str2num将字符串变为数字strcmp比较字符串14【例】:建立一个字符串向量,然后进行如下处理:1.取前5个字符组成子字符串2.将字符串倒过来重新排列3.统计字符串中小写字母的个数4.将字符串中的小写字母变成相应的大写字母>>ch='ABc123d4e56Fg9';>>subch=ch(1:5) %取子字符串>>revch=ch(end:-1:1) %将字符串倒排>>k=find(ch>=‘a’&ch<=‘z’); %找小写字母的位置>>length(k) %统计小写字母的个数>>ch(k)=ch(k)-(‘a’-‘A’); %将小写字母变成相应的大写字母>>char(ch)
15三、多项式多项式在很多学科的计算中有着重要的作用。众多的方程和定理都是多项式的形式。MATLAB提供多项式操作工具,包括多项式的求根、分解以及求导等等。161.多项式的表达和求根
在MATLAB中,多项式由一个行向量表示,该向量中的元素是按多项式降幂排列的。即多项式
f(x)=anxn+an-1xn-1+……+a0
可用行向量p=[an,an-1,
……a1,a0]表示。17【例】:输入多项式x3+6x2–3>>p=[160-3]注意:行向量中,必须包括具有零系数
的项。18利用指令P=poly(A),生成多项式满足:若A是方阵,则多项式为方阵A的特征多项式;若A是行向量,则多项式的根就是该向量中的元素;用函数roots可以求出多项式的根。
poly命令19【例】求出多项式x3+6x2–3的根>>p=[160-3]>>r=roots(p)r=-5.9142-0.75640.6706>>poly(r)ans=1.00006.00000.0000-3.0000202.多项式的运算(1).多项式乘法c=conv(a,b)【例】:计算两个多项式的乘积a(x)=x2+2x+3;b(x)=4x2+5x+6;>>a=[123];b=[456];>>c=conv(a,b)c=4.0013.0028.0027.0018.0021【例】两个多项式的加法a(x)=x2+2x+3;b(x)=5x+6;>>a=[123];b=[056];>>c=a+b c=179注意:若两个多项式阶数不同,低阶的多项式必须用首零填
补,使其与高阶多项式有同样的阶次。(2).多项式加减法22函数polyder(A)可以对多项式求导【例】多项式求导:>>q=[386521];>>h=polyder(q)h=153218102(3).多项式求导23(4).多项式估值设p为多项式,S为矩阵,有两种估值运算:按元素运算规则计算多项式的值
PA=polyval(p,S)
将S的每一个元素代入多项式求值,结果是和S同维的矩阵。按矩阵运算规则计算多项式的值
PAM=polyvalm(p,S)
矩阵S作为变量代入多项式求值,结果是和S同维的矩阵。24【例】多项式计算>>s=rand(3,3);>>p=poly(s);>>pa=polyval(p,s)pa=-0.11660.00750.0042-0.1067-0.0929-0.39360.0009-0.0422-0.0647>>pm=polyvalm(p,s)pm=1.0e-015*-0.33310.1665-0.0555-0.0260-0.0555-0.0451-0.16650.2776-0.3331pm中的元素都很小,是误差造成的,理论上讲,pm应该是零矩阵。25练习1
1.下列命令执行后,L1,L2,L3,L4的值分别等于多少?
A=1:2:9;B=10-A;L1=A==B;L2=A<=5L3=A>3&A<7; L4=find(A>3&A<7)2.已知矩阵A=7021-200-370-68观察命令find(abs(A)<30&abs(A)>=6)的执行结果。3.求[100,999]之间能被21整除的数的个数。提示:利用冒号表达式,再利用find和length函数。26练习21.求出字符串'Program'的ASCII码。2.将[776584766566]转换为字符串向量。3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025会议场地租赁合同(合同范本)
- 《2025光伏电站用工试用期合同》
- 品牌危机公关处理指南
- 小学生防拐防骗课件
- 在线医疗平台医生资源整合及服务模式创新方案
- 低血糖的识别与护理
- 服务型企业营销与品牌建设指南
- 花木市场委托协议
- 航空行业智能航空物流与运营管理方案
- 电信行业网络优化与客户服务升级策略方案
- 《遗传疾病概述》课件
- 《医养结合事业发展探究的国内外文献综述》4400字
- 水电施工机械新能源化的可行性分析与应用研究
- 关于中山市中医四诊智能化与传统中医诊断之间的协同效应调查问卷
- 【MOOC】压力与情绪管理-四川大学 中国大学慕课MOOC答案
- 我的家乡西藏山南
- 零星维修工程 投标方案(技术方案)
- 项目管理培训之进度管理课件
- 110kV@@变电站工程高大模板工程专项施工方案
- 先兆流产课件-课件
- 2022年北京市公务员录用考试《行测》真题及答案解析
评论
0/150
提交评论