数学建模社区-数学中国

标题: MATLAB程序的基本数据单元---数组 [打印本页]

作者: 森之张卫东    时间: 2015-8-28 22:22
标题: MATLAB程序的基本数据单元---数组

变量和数组
MATLAB程序的基本数据单元是数组。一个数组是以行和列组织起来的数据集合,并且拥有一个数组名。数组中的单个数据是可以被访问的,访问的方法是数组名后带一个括号,括号内是这个数据所对应行标和列标。标量在MATLAB中也被当作数组来处理——它被看作只有一行一列的数组。

数组可以定义为向量或矩阵。向量一般来描述一维数组,而矩阵往往来描述二维或多维数组。在本书中,当我们讨论一维数组时用向量表示,当我们讨论二维或多维向量时用矩阵。如果在特殊情况下,同时遇到这两种数组,我们就把他们通称为“数组”。

数组的大小(size)由数组的行数和列数共同决定,注意行数在前。一个数组所包含的数据多少可由行数乘列数得到。例如,下列数组的大小为



  
数组
  
大小
  
file:///C:/Users/lx/AppData/Local/Temp/msohtmlclip1/01/clip_image003.gif
  
这是一个3×2矩阵,包含6个元素
  
  
file:///C:/Users/lx/AppData/Local/Temp/msohtmlclip1/01/clip_image005.gif
  
  
这是一个一维行向量,共有4个元素
  
  
file:///C:/Users/lx/AppData/Local/Temp/msohtmlclip1/01/clip_image007.gif
  
这是一个一维行向量,共有4个元素


数组中的单个数据是可以被访问的,访问的方法是数组名后带一个括号,括号内是这个数据所对应的行标和列标。如果这个数组是一个行向量或列向量,则只需要一个下标。例如上面的数组A2 1)为3C2)为2。一个MATLAB变量是一段包含一个数组的内存区,并且拥有一个用户指定的变量名。通过适当的命令和它的变量名随时可以就调用它和修改它。

MATLAB的变量名必须以字母开头,后面可以跟字母,数字和下划线(_.只有前31个字符是有效的;如果超过了31个字符,基余的字符将被忽略。如果声明两个变量,两变量名只有第32个字符不同,那么MATLAB将它们当作同一变量对待。


常见编程错误

确保你所声明的变量名前31个字符是独一无二的。否则,MATLAB将无法辨认出它们的不同。


当你编写程序时,给变量起一个有意义的名字非常的重要。有意义的名字极大的提高了程序的可读性和可维护性。daymonthyear这样的名字意义非常明确,即使第一次看到也能理解。尽管空格不能用在MATLAB变量名中,但是可以用下划线代替空格创造出有意义的变量名。比如,changerate可以写成change_rate.


好的编程习惯

给你的变量起一个描述性的且易于记忆的变量名。例如,货币汇率可以exchange_rate为变量名。这种方法将使得你的程序更加明确且易于理解。


在你所写的程序的开头列出一数据字典(data dictionary)十分的重要.数据字典列举了你在本程序中用到的所有变量的定义。它的定义应包括本条目的所要描述的内容和它在执行时所在的单元。当编写程序时,编定数据字典看似没有必要。但是设想一下,在过了一段时间后,你或其他人要对此程序修改,这时数据字典就显得十分的有用。


好的编程习惯

给每个程序创建一个数据字典以增强程序的可维护性。


MATLAB语言中是区分字母大小的,也就是说,大写字母和小写字母代表的东西是不同的。所以变量NAME,NamenameMATLAB中是不同的。所以已用过的小写变量名与一个新建大写的变量名重名,这时使用时要特别地小心。在一般情况下,我们一律用小写字母来表示。


好的编程习惯

在每次用到一个变量时,我们要确保变量名的大小写的精确匹配。在变量名中只使用小写字母是一个好的编程习惯。


两个最常见的变量类型是char型和double型。double型的变量包括由64位双精度浮点数构成的标量或数组。这种变量可以代表实数,虚数和复数。每个值的实部和虚部的变化范围为正负10­308~10308,拥有1516位有效数字。这是基本的数字数据类型。

无论什么时侯,你将一个数值赋值于一个变量名,那么MATLAB将自动建立一个double型变量。例如,下面语句创建了一个以var为变量名的double型变量,包含了一个double型的单个元素,存储了复数值(1+i;

var=1+i;


char型的变量包括由16位数值构成的标量或数组,每一个16位数代表一个字符。这个类型的经常用于字符串操作,当一个字符或字符串赋值于一个变量名时,系统会自动建立一个char型变量。例如,下面的这个语句创建了一个char型变量comment,并存储了一个字符串在其内。当这个语执行后,系统将会建立一个1×26的字符串数组。

comment='this is a character string';

C语言这样的语言中,变量类型和变量在使用之前必须强制声明。这种语言我们叫它强类型语言。相对地,像MATLAB这样的叫做弱类型语言。通过简单的赋值形式就可以创建变量,变量类型取决于创建时的类型。

截图.PNG (26.89 KB, 下载次数: 182)

截图.PNG






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5