基本运算及字符串处理彡灬小宇

针对矩阵而言的,也有针对矩阵元素的运算。

1.算术运算

(1)基本算术运算

基本算术运算符:+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)。

lMATLAB的算术运算是在矩阵意义下进行的。

l单个数据的算术运算只是矩阵运算的一种特例

加减运算

l若两矩阵同型,则运算时两矩阵的相应元素相加减。

l若两矩阵不同型,则MATLAB将给出错误信息。

l一个标量也可以和矩阵进行加减运算,这时把标量和矩阵的每一个元素进行加减运算。

乘法运算

l矩阵A和B进行乘法运算,要求A的列数与B的行数相等,此时则称A、B矩阵是可乘的,或称A和B两矩阵维数和大小相容。

l如果两者的维数或大小不相容,则将给出错误信息,提示用户两个矩阵是不可乘的。

除法运算

在MATLAB中,有两种矩阵除法运算:右除/和左除\。表示两种不同的除数矩阵和被除数矩阵。

如果A矩阵是非奇异方阵,则B/A等效于B*inv(A)【A矩阵的逆右乘B矩阵】,A\B等效于inv(A)*B【A矩阵的逆左乘B矩阵】。

>>A=[1,2,3;4,2,6;7,4,9];

>>B=[4,3,2;7,5,1;12,7,92];

>>C1=B/A

C1=-0.1667-3.33332.5000

-0.8333-7.66675.5000

12.833363.6667-36.5000

>>C2=A\B

C2=0.5000-0.500044.5000

1.00000.000046.0000

0.50001.1667-44.8333

结果不相同,对于含有标量的运算,除法运算结果相同。

>>3/4

ans=0.7500

>>4\3

>>a=[10.5,25]

a=10.500025.0000

>>a/5

ans=2.10005.0000

>>5\a

乘方运算

一个矩阵的乘方运算可以表示成A^x,要求A为方阵,x为标量。

>>A=[1,2,3;4,5,6;7,8,0];

>>A^2

ans=303615

668142

395469

(2)点运算

l点运算符:.*、./、.\和.^。

>>A=[1,2,3;4,5,6;7,8,9];

>>B=[-1,0,1;1,-1,0;0,1,1];

>>C=A.*B//两个矩阵对应元素做乘法运算

C=-103

4-50

089

>>D=A*B//矩阵意义下的乘法运算。

D=114

1110

1116

例1当x=0.1、0.4、0.7、1时,分别求y=sinxcosx的值。

x=0.1:0.3:1;

y=sin(x).*cos(x)//必须为点乘运算x为向量,sinxcosx为通长度的向量

2.关系运算通常用来表示条件

l关系运算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、~=(不等于)。

l当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为1,否则为0。

>>3>4

ans=0

>>x=5//赋值

x=5

>>x==5//关系运算

ans=1

l当参与比较的量是两个同型的矩阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,最终的关系运算的结果是一个与原矩阵同型的矩阵,它的元素由0或1组成。

l当参与比较的一个是标量,而另一个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,最终的关系运算的结果是一个与原矩阵同型的矩阵,它的元素由0或1组成。

例2建立3阶方阵A,判断A的元素是否为偶数。

>>A=[24,35,13;22,63,23;39,47,80]

A=243513

226323

394780

>>P=rem(A,2)==0//每个元素除以2的余数矩阵

P=100

100

001

3.逻辑运算

逻辑运算符:&(与)、|(或)和~(非)。

设参与逻辑运算的是两个标量a和b,那么运算规则为:

la&ba、b全为非零时,运算结果为1,否则为0。

la|ba、b中只要有一个为非零时,运算结果为1。

l~a当a为零时,运算结果为1;当a为非零时,运算结果为0。、

例:

>>3<4&6>5

>>~(9==1)

>>~9==1

算数优先级问题:算数运算的优先级最高,逻辑运算优先级最低,但逻辑非运算是单目运算,他的优先级比双目运算要高。

l若参与逻辑运算的是两个同型矩阵,那么将对矩阵相同位置上的元素按标量规则逐个进行运算,最终运算结果是一个与原矩阵同型的矩阵,其元素由1或0组成。

l若参与逻辑运算的一个是标量,一个是矩阵,那么将在标量与矩阵中的每个元素之间按标量规则逐个进行运算,最终运算结果是一个与矩阵同型的矩阵,其元素由1或0组成

例3水仙花数是指各位数字的立方之和等于该数本身的三位正整数。求全部水仙花数。

m=100:999;

m1=rem(m,10);//个位

m2=rem(fix(m/10),10);//十位

m3=fix(m/100);//百位

k=find(m==m1.*m1.*m1+m2.*m2.*m2+m3.*m3.*m3)//序号

k=

54271272308

s=m(k)

s=

153370371407

1.7字符串处理

分为数值型数据和字符型数据(字符串数据)

l字符串的表示

l字符串的操作

1.字符串的表示

在MATLAB中,字符串是用单引号括起来的字符序列。

>>xm='CentralSouthUniversity'

>>xm(1:3)//一个字符串当做行向量,每个元素对应一个字符。取1-3个字符

ans=Cen

若字符串中的字符含有单引号,则该单引号字符要用两个单引号来表示。

>>'I''mateacher.'

ans=I'mateacher.

建立多行字符串,形成字符串矩阵。

>>ch=['abcdef';'123456'];

>>ch(2,3)//第二行第三列的元素

ans=3

例题:

建立一个字符串向量,然后对该向量做如下处理:①取第1~5个字符组成的子字符串。②将字符串倒过来重新排列。③将字符串中的小写字母变成相应的大写字母,其余字符不变。④统计字符串中小写字母的个数。

>>ch='ABc123d4e56Fg9';

>>subch=ch(1:5)

subch=ABc12

>>revch=ch(end:-1:1)//步长为-1,最后一个字符到第一个字符

revch=9gF65e4d321cBA

>>k=find(ch>='a'&ch<='z')//find找字母位置

k=37913

>>ch(k)=ch(k)-('a'-'A')//小写转大写差32k为向量

ch=ABC123D4E56FG9

>>length(k)//统计向量k的个数

ans=4

2.字符串的操作

(1)字符串的执行

字符串的内容作为对应的matlab命令来执行。

>>t=pi;

>>m='[t,sin(t),cos(t)]';

>>y=eval(m)//调用eval函数向量赋给变量y

y=3.14160.0000-1.0000

2)字符串与数值之间的转换

abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵。

char函数可以把ASCII码矩阵转换为字符串矩阵。

>>s1='MATLAB';

>>a=abs(s1)

a=776584766566

>>char(a+32)

ans=matlab

(3)字符串的比较

字符串的比较有两种方法:利用关系运算符或字符串比较函数。

l关系运算符比较:两个字符串里的每个字符依次按ASCII值大小逐个进行比较,比较的结果是一个数值向量,向量中的元素要么是1,要么是0。(两个字符串拥有相同的长度时)

>>'www0'>='W123'

ans=1110

l字符串比较函数用于判断字符串是否相等,有4种比较方式,函数如下:

strcmp(s1,s2):用来比较字符串s1和s2是否相等,如果相等,返回结果为1,否则返回0。

strncmp(s1,s2,n):用来比较两个字符串前n个字符是否相等,如果相等,返回1,否则返回0。

strcmpi(s1,s2):在忽略字母大小写前提下,比较字符串s1和s2是否相等,如果相等,返回1,否则返回0。

strncmpi(s1,s2,n):在忽略字符串大小写前提下,比较两个字符串前n个字符是否相等,如果相等,返回1,否则返回0。

>>strcmp('www0','w123')

>>strncmpi('Www0','w123',1)

(4)字符串的查找与替换

findstr(s1,s2):返回短字符串在长字符串中的开始位置。

strrep(s1,s2,s3):将字符串s1中的所有子字符串s2替换为字符串s3。

THE END
1.Java基础运算符,表达式和语句java条件运算符计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运算符 算术运算符 算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。表https://blog.csdn.net/weixin_73295475/article/details/136458435
2.计算机中的算术运算关系运算逻辑运算分别是什么?关系运算:关系的基本运算有两类:一类是传统的集合运算(并、差、交等),另一类是专门的关系运算(选择、投影、连接、除法、外连接等),有些查询需要几个基本运算的组合,要经过若干步骤才能完成。逻辑运算:逻辑运算又称布尔运算。布尔用数学方法研究逻辑问题,成功地建立了逻辑演算。他用等式表示判断https://zhidao.baidu.com/question/1552248081733214387.html
3.李涛听从内心,无问西东!电子科技大学主页平台管理系统2.转换后不会改变原数据的类型及变量值,只在本次运算中临时性转换。 3.强制转换后的运算结果不遵循四舍五入原则。 运算符号 C语言中运算符: ※算术运算符 ※赋值运算符 ※关系运算符 ※逻辑运算符 ※三目运算符 算术运算符 c语言基本运算符: 除法运算中注意: https://faculty.uestc.edu.cn/LiTao_LoVe/zh_CN/article/290136/content/2454.htm
4.C语言基础知识笔记1※ 关系运算符 ※ 逻辑运算符 ※ 三目运算符 2、算术运算符 C语言基本算术运算符如下表: 除法运算中注意: 如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如8/3 = 2;而两数中有一个为小数,结果则为小数,如:9.0/2 = 4.500000。 https://www.imooc.com/article/23511
5.数学建模算法(番外3)解决规划问题的神器——Lingo(中)1.基本运算符:算数运算符,逻辑运算符和关系运算符 2.数学函数:三角函数和常规的数学函数。 3.金融函数:Lingo提供的两种金融函数。 4.概率函数:Lingo提供了大量的概率函数。 5.变量界定函数:这类函数用来界定变量的取值范围。 6.集操作函数:对集的操作提供帮助。 https://www.jianshu.com/p/45a6716ff46c
6.C语言入门教程8一、算术运算符 二、赋值运算符 三、自增运算符和自减运算符 四、sizeof 五、逗号运算符 六、关系运算符 七、逻辑运算符 八、三目运算符 九、位运算符 计算机的基本能力就是计算,所以一门程序设计语言的计算能力是非常重要的。C语言之所以无所不能,是因为它不仅有丰富的数据类型,还有强大的计算能力。C语言一https://www.kancloud.cn/digest/clearning/149696
7.运算符和表达式教案.doc4、表达式中运算的优先级 VB表达式中的运算优先级依次为:算术运算、关系运算、逻辑运算。 三、总结(3分钟) 1、本堂课主要讲了四种运算(算术运算、字符串运算、关系运算、逻辑运算) 2、表达式 四、作业 (2分钟) 1、评三好学生,语文、数学、计算机成绩均要85分以上(语文成绩变量用语文来表示,数学成绩变量用数学https://m.book118.com/html/2023/1117/6054220134010010.shtm
8.python关系运算符python关系运算符号包括哪些一、运算符是什么? 运算符是用于数学计算,比较大小和逻辑运算的符号。python中主要有以下几类运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 二、算数运算符 算数运算符主要用于数学运算,部分运算符也可以用于其他数据类型的运算。 https://blog.51cto.com/u_16213725/8561021
9.银符考试题库在线练习7. 计算机中运算器的作用是 。 A.控制数据的输入/输出 B.控制主存与辅存之间的数据交换 C.完成各种算术运算和逻辑运算 D.协调和指挥整个计算机系统的操作 A B C D 8. 能将高级语言源程序转换成目标程序的是 。 A.调试程序 B.解释程序 C.编译程序 D.编辑程序 A B C D 9. 一个磁盘分区上的根目录http://www.cquc.net:8089/YFB12/examTab_getExam.action?su_Id=6&ex_Id=36304