ImageVerifierCode 换一换
格式:PPT , 页数:36 ,大小:299KB ,
资源ID:8506552      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-8506552.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(matlab数据类型.ppt)为本站会员(精品资料)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

matlab数据类型.ppt

1、1,数学软件 Matlab, 数据类型,2,变量与常量 数值型数据 逻辑型数据字符与字符串 细胞(cell)结构型数据句柄,内容提要,3,变量,变量是任何程序设计语言的基本元素之一,Matlab 变量的特点:,变量,不要求事先声明(也无法声明)不需要指定变量类型: 根据所赋的值或对变量所进行的操作来确定变量的类型变量的类型可以随时改变: 在赋值过程中,如果变量已经存在,Matlab 会用新值代替旧值,并以新的数据的类型代替旧的变量类型,如果能够事先给大数组分配空间,则可以提高程序的执行效率,4,必须以字母开头,含字母(大小写)、数字和下划线变量名长度不超过 65 ( Matlab6.5.1 版

2、本以上 )区分大小写,变量,变量命名要求,Matlab 预定义常量,5,数据类型,numeric:数值char:字符logical:逻辑cell:单元、细胞、元胞struct:结构,Matlab 常用的数据类型有:,6,Matlab7.x 中的数据类型表,逻辑,字符,细胞,函数句柄,7,为了提高数值计算的精度,若没有指定数据类型,则所有的数都被看作是双精度的浮点数使用整型数据或单精度数据可以节约内存空间,数值型,数值型数据,整数,浮点数,带符号,无符号,单精度,双精度,8,整型数据,Matlab 提供四种带符号整型和四种无符号整型,9,x1=11,x2=15,x3=16,x4=127,x5=2

3、55,x6=255,x7=0,举例,x1=int8(11);,x2=int8(15.49);,x3=int8(15.5);,x4=int8(130);,x5=uint8(255);,x6=uint8(256);,x7=uint8(-1);,10,相同整型数据之间的运算,结果为同类型的整数不同整型数据之间不能进行运算!,整型数据可以和双精度标量进行数值运算,结果为整数。在运算过程中保持浮点运算精度,最后将结果转换成整型。,整型数据不能与双精度数组进行运算,整型数据运算规则,整型数据运算规则:,x=int8(11); y=int8(5); z=x*y % OK,x=int8(11); y=int1

4、6(5); z=x*y % ERROR!,x=int8(11); y=1,2; z=x*y % ERROR!,11,例:,最大整数与最小整数,intmax(int8); intmin(int8);,intmax(uint8); intmin(uint8);,intmax; intmin;,intmax(int32); intmin(int32);,intmax 和 intmin 函数:查询不同整型数据所能表示的最大整数和最小整数,12,single:将数据转换成单精度浮点数,double:将数据转换成双精度浮点数,浮点数与其它类型数据运算表,浮点数,浮点数:单精度(占 4 个字节)和双精度(占

5、 8 个字节),X,13,最大和最小浮点数,例:,realmax(single); realmin(single);,realmax(double); realmin(double);,realmax; realmin;,realmax(double); realmin(double);,realmax 和 realmin :查询单精度和双精度所能表示的最大浮点数和最小浮点数,14,直接输入:,使用 complex 函数,复数,复数的输入方法,z=3+4i,z=complex(3,4),z=complex(3),z=complex(3,0),虚部与虚数单位之间不能留空格,15,整型数据相关函数

6、,16,浮点数相关函数,17,复数相关函数,18,其它相关函数,19,判断数据类型相关函数,20,字符串必须用单引号括起来,字符串是由多个字符组成的字符行向量,字符串,字符与字符串运算是各种高级语言不可缺少的部分,Matlab具有强大的字符处理能力,str1=Matrix Laboratory,str2=M,a,t,r,i,x,字符数组必须是方的,即每行的字符个数必须相等,str3=M,a,t; r,i,x,字符串和字符数组,21,字符串中的每个字符(包括空格)都是字符串的一个元素,字符串,str=Matrix; str(3) size(str),str=Matrix; double(str(

7、3); int16(str);,Matlab中字符是以 ASCII 码存储的,因而区分大小写,可用 double 等函数查看一个字符的 ASCII 码,22,使用 char 函数,ASCII 码 字符串,字符串的输入,直接输入,str1=Matrix; str2=Laboratory; str=str1, str2; str=str1; str2; / ERROR!,str=char(77,97,116,108,97,98),str=char(str1,str2),生成一个字符数组,第一行为 str1,第二行为 str2数组的列数=max(length(str1), length(str2),

8、23,字符与数的转换,字符串、字符数组与数值数组之间的转换,按 ASCII 码转换,字符 数:double、int8、int16、. 数 字符:char,直接将数转换成字符,字符 数:str2num (仅限于字符串由数字构成)数 字符:num2str、int2str、mat2str,a=97, 97.3; 97.8, 98; str1=char(a); str2=num2str(a); str3=int2str(a); str4=mat2str(a);,24,举例,char 的输入参数有效范围为 0,65535,当输入参数中有小数时,直接将小数部分舍去。,num2str 直接将每个数字转换成字

9、符,mat2str 把整个矩阵转换成字符行向量,包括矩阵中的方括号、空格 和 分号(逗号自动去除),a=1,2,3; b=num2str(a); c=2*a; % c=? d=2*b; % d=?,数值数组转换为字符数组后,表面上看象一个数值数组,但此时的元素是字符而不是数!,25,char、double、int8、int16 等是按 ASCII码 进行转换,str2num、num2str、int2str、mat2str 是直接进行转换,26,字符串的合并,字符串水平合并,直接使用中括号,使用 strcat 函数,str1=hello , world!,str2=strcat(hello ,w

10、orld!),使用 strcat 时,系统会自动去除原字符串结尾处的空格,水平合并得到的是一个更长的字符串,27,字符串的合并,字符串垂直合并,直接使用中括号,使用 strvcat 函数,str3=Matrix ; Laboratory,str4=strvcat(Matrix,Laboratory),在中括号中用分号实现垂直合并,必须保证每个字符串的长度相等,否则需用空格补齐,用 strvcat 合并,系统会自动为较短的字符串补充空格,垂直合并得到的是一个字符数组,28,字符串的执行,执行字符串所表示的表达式或命令: eval,str=1+2; a=eval(str),str=A=magic(

11、3); eval(str),str1=figure(1); mesh(peaks(60); str2=figure(2); waterfall(peaks(60); eval(str1) eval(str2),29,字符串相关函数,30,细胞变量的表示方法类似于带有下标的数组,但这些下标不是用圆括号括起来,而是使用大括号。,普通数组中的每个元素都必须具有相同的数据类型,而细胞则没有此要求。,细胞数组/单元/元胞,Matlab 从 5.0 版开始引入了一种新的数据类型 细胞 ( cell ),该结构可以把不同类型的数据纳入到一个变量中。,31,细胞数组举例,32,用赋值语句直接定义,用 cell

12、 函数预先分配空间,然后对细胞的每个元素逐个赋值,细胞变量的定义,A=1 2; 3 4; str=Matlab; M=1:4, A, str; cellplot(M),M=cell(2,3); M1,1=1; M1,2=rand(2); M1,3=hello; M2,1=1:3; M2,2=Matrix; M2,3=5; cellplot(M),可以通过以下两种方式定义一个细胞变量,M=cell(m,n); % 生成一个 m 行 n 列 的细胞数组,33,细胞变量元素的引用,A=1 2; 3 4; str=Matlab; M=1:4, A, str; N=hello, M; eye(2),ma

13、gic(3); N1,1 N1,2 N1,21,2 N1,21,2(2,1),要引用细胞中的单个元素,必须使用大括号,34,相关函数,celldisp % 列出细胞变量的内容,cellplot % 用图形方式显示细胞变量的内容,iscell % 判别一个变量是否为细胞变量,A=1 2; 3 4; str=Matlab; M=1:4, A, str; celldisp(M); cellplot(M); iscell(A) iscell(M),35,上机作业,1、已知 Chebyshev 多项式定义如下:,编程计算 T10(x) (注:Tn(x) 为 n 阶多项式),试用细胞数组实现(程序取名 m

14、101.m),2、阶梯问题:有一个长阶梯,若每步上 2 阶,最后剩 1 阶;若每步上 3 阶,最后剩 2 阶;若每步上 5 阶,最后剩 4 阶;若每步上 6 阶,最后剩 5 阶;若每步上 7 阶,最后刚好一阶不剩。问该阶梯至少有多少阶?编程解决这个问题。(程序取名 m102.m),36,上机作业,3、哥德巴赫猜想:任何一个大于 2 的偶数都能表示成两个素数之和。试编程验证 3, 2000 中的偶数是否满足哥德巴赫猜想的论断,并将结果写入文本文件 m103.txt(程序取名 m103.m),4、由 0 到 9 共 10 个数字组成 4 个完全平方数(即是某个正整数的平方),要求它们分别是一位、二位、三位、四位的数字,且数位不重复(即 0 到 9 每个数字只能在这四个数字中出现一次)。例如:1 36 784 9025 9 16 784 3025 编程找出所有满足条件的数,并写入到文本文件 m104.txt 中。,(程序取名 m104.m),

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报