- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
*/43 (5) 逻辑非是单目运算符,也服从矩阵运算规则。(6) 在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。 算术符关系符逻辑符 */43 例2.4 在[0,3π]区间,求y=sin(x)的值。要求: (1)消去负半波,即(π,2π)区间内的函数值置0。 (2) (π/3, 2π/3 )和( 7π/3, 8π/3 )区间内取值均为sin π/3 。 先根据自变量向量x产生函数值向量y,然后按要求对y进行处理。处理的思路有两个:一是从自变量着手进行处理,二是从函数值着手进行处理。 x=0:pi/100:3*pi; y=sin(x); y1=(y=0).*y; %消去负半波 p=sin(pi/3); y2=(y=p)*p+(yp).*y1; %按要求处理第(2)步 */43 此外,MATLAB还提供了一些关系与逻辑运算函数。(见表 2.4 help ops) all 全真为真 any 全假为假 find 返回非零元素的序号 isempty 空阵为真 例2.5 建立矩阵A,然后找出在[10,20]区间的元素的位置。 (1) 建立矩阵A。 A=[4,15,-45,10,6; 56,0,17,-45,0] (2) 找出在[10,20]区间的元素的位置。 find(A=10 A=20) Note:[I,J]=ind2sub(size(A),index) %序号转换为下标 [R,C,V] = find(EXPR) %无需转换 行下标、列下标、元素值 特色:真假值参与运算。 */43 2.5 字符串 在MATLAB中,字符串是用单撇号括起来的字符序列。eg . aadadfgfg MATLAB将字符串当作一个行向量,每个元素对应一个字符,其标识方法和数值向量相同。也可以建立多行字符串矩阵。 */43 字符串是以ASCII码形式存储的。 abs( )和double( )函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵。相反,char( )函数可以把ASCII码矩阵转换为字符串矩阵。 字符串矩阵 ASCII码数值矩阵 abs() double() char() */43 例2.5 建立一个字符串向量,然后对该向量做如下处理:(1) 取第1~5个字符组成的子字符串。(2) 将字符串倒过来重新排列。(逆置)(3) 将字符串中的小写字母变成相应的大写字母,其余字符不变。(4) 统计字符串中小写字母的个数。 */43 命令如下: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) % ch 查看更新串 length(k) %统计小写字母的个数 Note: upper( ) Zhou yi zhou san zhou si */43 与字符串有关的另一个重要函数是eval,其调用格式为: eval(t)其中t为字符串。它的作用是把字符串的内容作为对应的MATLAB语句来执行。 例: t=sin(pi/2) %原样输出 eval(t) %强制求值 */43 表2.5 字符串处理函数及含义 help strfun setstr 同 char mat2str num2str int2str str2num strcat strcmp Eg. disp 单参数显示字符串函数 disp(Hello!) disp(Im a student. ) %字符串中用’’表示’ disp([2+3=,int2str(2+3)]) %混合输出要用函数转化 */43 2.6 结构数据和单元数据2.6.1 结构数据1.结构矩阵的建立与引用 结构矩阵的元素可以是不同的数据类型,它能将一组具有不同属性的数据纳入到一个统一的变量名下进行管理。建立一个结构矩阵可采用给结构成员赋值的
文档评论(0)