《计算机应用基础1语言基础.ppt》由会员分享,可在线阅读,更多相关《计算机应用基础1语言基础.ppt(81页珍藏版)》请在第壹文秘上搜索。
1、第一章第一章Matlab编程基础编程基础1.1 常量,变量和数据类型常量,变量和数据类型1.2 数据的输出与输入数据的输出与输入1.3 函数和过程函数和过程1.4 程序流程控制程序流程控制1.5 图形与可视化图形与可视化1.1 常量,变量和数据类型常量,变量和数据类型一一 变量变量 不用定义,分为局部和全局变量不用定义,分为局部和全局变量二二 数组(数组(array) MATLAB所用处理变量,都是以数组方式存储:包所用处理变量,都是以数组方式存储:包括标量(括标量(scalar),向量(,向量(vector),矩阵(),矩阵(matrix),),字符串(字符串(string),单元数组,单元
2、数组(cell array),结构体,结构体(structure),对象(,对象(object)。三三 数组的存储方式数组的存储方式 按列方式存储按列方式存储1.1 常量,变量和数据类型常量,变量和数据类型例例1-1a=house;floor;porcha= house floor porch注意:注意: 字符串长度相同; 英文状态下输入。多维数组,逻辑数组,空数组多维数组,逻辑数组,空数组向量,矩阵和多维数组向量,矩阵和多维数组 标量:单一值表征的量;标量:单一值表征的量; 向量:由标量的一组有序集合表示的量;向量:由标量的一组有序集合表示的量; 数组:是元素的一维或多维排列,包含一维数数组
3、:是元素的一维或多维排列,包含一维数 组组x(i), 二维数组二维数组 x(i,j) 和多维数组和多维数组x(I,j,k,)1.1 常量,变量和数据类型常量,变量和数据类型1.1 常量,变量和数据类型常量,变量和数据类型向量与矩阵的操作:向量与矩阵的操作:(1)元素操作)元素操作 对于对于 t=1 3 5; 2 4 6的矩阵的矩阵 t(2,1) %显示一个元素显示一个元素 t(2,1)=7 %替换一个元素替换一个元素 (2) 形成新矩阵形成新矩阵 t1=t t (3)矩阵的转阵用(矩阵的转阵用() (4)行列操作)行列操作 p1=(:, 2) %全部第二列的元素全部第二列的元素 p2=t1(2
4、,:) p2=t1(2,:) % 全部第三行元素全部第三行元素定义数组的常用命令定义数组的常用命令rand rand % % 产生元素为均匀分布的随机数数组产生元素为均匀分布的随机数数组randn randn % % 产生元素为正态分布的随机数数组产生元素为正态分布的随机数数组eye eye % % 产生二维对角元为产生二维对角元为1 1,其余为,其余为0 0的数组的数组onesones % % 产生元素全为产生元素全为1 1的数组的数组zeroszeros % % 产生元素全为产生元素全为0 0的数组的数组diagdiag % % 产生二维对角数组产生二维对角数组magicmagic % %
5、 产生二维魔方数组产生二维魔方数组meshgridmeshgrid % % 产生平面的网格点数据产生平面的网格点数据1.1 常量,变量和数据类型常量,变量和数据类型二维数组的信息获取二维数组的信息获取lengthlength % % 矩阵最长维数的长度矩阵最长维数的长度ndimsndims % % 矩阵的维数矩阵的维数numelnumel % % 元素的个数元素的个数sizesize % % 每一维的长度每一维的长度例例1-21-2 A = rand(3,5) A = rand(3,5) a = length(A) a = length(A) b = ndims(A) b = ndims(A)
6、 c = numel(A) c = numel(A) m,n = size(A) m,n = size(A)1.1 常量,变量和数据类型常量,变量和数据类型 四四 数据的类型数据的类型 字符型和字符窜字符型和字符窜 数值型数值型 整型,包括整型,包括8位,位,16位以及位以及32位。位。 单单/双精度浮点型以及双精度复数矩阵双精度浮点型以及双精度复数矩阵 双精度复数矩阵,表示位双精度复数矩阵,表示位m*n数组数组 单元数组单元数组 函数句柄函数句柄 可以用来保存函数的所有信息,以便调用可以用来保存函数的所有信息,以便调用1.1常量,变量和数据类型常量,变量和数据类型1.2 数据的输出与输入数据
7、的输出与输入一一 数据的输出数据的输出 Save 命令命令:可以将工作环境的几个或全部变量保存:可以将工作环境的几个或全部变量保存到文件中。到文件中。例例 : a=1,2 b=3 4 5 c=-10 6 8 save file1 为了便于读取,可以将文件存为文本文件(为了便于读取,可以将文件存为文本文件(”.txt”)Save file4.txt ascii (注意,有空格注意,有空格)savefile = test.mat;p = rand(1,10);q = ones(10);save(savefile,p,q)save(d:mymfilesjune10,vol,temp,-ASCII)1
8、.2 数据的输出与输入数据的输出与输入Save 命令命令 格式格式 用 fprintf 函数 可以按格式将数据输出至屏幕或写格式化数据到文件中。x=35; y=68.3; string = results:; fprintf(t%stx = %5d,ty = %8.2f, string,x,y)用用Disp()函数()函数将结果输到屏幕上将结果输到屏幕上1.2 数据的输出与输入数据的输出与输入1.2 数据的输出与输入数据的输出与输入2 数据的输入数据的输入 利用利用M文件产生数据文件产生数据 用用Load命令从命令从Mat文件或文本文件直接读入文件或文本文件直接读入 clear load fi
9、le1 whos用用fscanf 函数函数用提示输入函数用提示输入函数inputt=input(vector of temperature (0C)=)数据型文件的输入以及输出数据型文件的输入以及输出 (ME_1_1.m)data1=load(6-0.txt);data2=load(6-3.txt); % facbriateing the time seriers points datat=linspace(0,10,20000); plot(datat, data1) figure plot(datat, data2) fid=fopen(10-1-3.txt,w) fprintf(fid,
10、%6.2fn,data1(:) status=fclose(fid); fid=fopen(10-1-4.txt,w) fprintf(fid,%6.2fn,data2(:) status=fclose(fid); 1.2 数据的输出与输入数据的输出与输入1.3 逻辑判断及流程控制逻辑判断及流程控制 a= 2+2=4a=(2+2=4)a=(34)a=(43)a=(3=4)a=(43)a=(34)等于等于a = 1a = 1小于小于a = 1 a = 0小于等于小于等于a = 1a = 0大于大于a =1a =0a=(4=3)a=(3=4)a=(3=4)A=magic(6)rem(A,3)p=(
11、rem(A, 3)=0)lp=find (p) 大于等于大于等于a=1a=0不等于不等于a=1魔方矩阵,每行、每列、对角线的元素之和魔方矩阵,每行、每列、对角线的元素之和=(n3+n)/2A整除整除3,求余数,求余数余数为余数为0,是真,即整除,是真,即整除找出找出p矩阵中不为零元素的序号,矩阵元素是按列排序号的。矩阵中不为零元素的序号,矩阵元素是按列排序号的。1. 关系运算关系运算A=magic(6)A =35 1 6 26 19 24 3 32 7 21 23 25 31 9 2 22 27 20 8 28 33 17 10 15 30 5 34 12 14 16 4 36 29 13 1
12、8 11rem(A,3)ans = 2 1 0 2 1 0 0 2 1 0 2 1 1 0 2 1 0 2 2 1 0 2 1 0 0 2 1 0 2 1 1 0 2 1 0 2p=(rem(A, 3)=0)p =0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 1 1 0 0 1 0 0 0 1 0 0 1 0lp=find (p) lp=2 5 9 12 13 16 20 23 27 30 31 341.3 逻辑判断及流程控制逻辑判断及流程控制 矩阵元素的序号排法:矩阵元素的序号排法: nm阵中下标为阵中下标为(j,k)的元素序号为的元素序号为 l
13、=(k-1)*n+j1713192531281420263239152127334101622283451117232935612182430361.3 逻辑判断及流程控制逻辑判断及流程控制 符号符号意义意义符号符号意义意义符号符号意义意义+加加-减减*矩阵乘矩阵乘矩阵左除矩阵左除/矩阵右除矩阵右除矩阵乘幂矩阵乘幂.*矩阵元素乘矩阵元素乘./矩阵元素除矩阵元素除.矩阵元素乘幂矩阵元素乘幂( )优先,下标输优先,下标输入参量入参量矩阵,向量输矩阵,向量输入变量入变量:整行(列)等增整行(列)等增量赋值量赋值.小数点小数点.母目录母目录行命令延续符行命令延续符,语句分割符,语句分割符,显示显示;语
14、句分割符,语句分割符,不显示不显示=赋值符赋值符转置,引用转置,引用!操作系统命令操作系统命令%注释符注释符=关系相等符关系相等符关系大小符关系大小符=关系不等符关系不等符&逻辑与逻辑与|逻辑或逻辑或逻辑非逻辑非xor异或异或kronKronecker积积数数学学及及逻逻辑辑运运算算符符号号 exist检查变量或函数是否有定检查变量或函数是否有定义义any检查向量中有无非零元检查向量中有无非零元素素all检查向量中元素是否全为检查向量中元素是否全为非零非零find找到非零元素的序号找到非零元素的序号isnan元素为元素为NaN时得时得1isinf元素为元素为Inf时得时得1isfinite元素
15、为有限值时得元素为有限值时得1isempty矩阵为空阵时得矩阵为空阵时得1isreal矩阵为实数阵时得矩阵为实数阵时得1issparse矩阵为稀疏阵时得矩阵为稀疏阵时得1isstr为文本字符串时得为文本字符串时得1isglobal变量为全局变量时得变量为全局变量时得1bitand按位求按位求“与与”bitcmp按位求按位求“非非”(补)(补)bitor按位求按位求“或或”bitmax最大浮点整数最大浮点整数bitxor按位求按位求“异或异或”bitset设置位设置位bitget获取位获取位bitshift按位移动按位移动union集合集合“合合”unique去除集合中的重复元素去除集合中的重复
16、元素intersect集合集合“交交”setdiff集合集合“差差”setxor集合集合“异或异或”ismember是集合中的元素时为真是集合中的元素时为真逻逻辑辑字字符符检检查查 位位运运算算 集集合合运运算算 1.3 逻辑判断及流程控制逻辑判断及流程控制 (1)if语句语句if (表达式表达式) 语句组语句组A,endif (表达式表达式1) 语句组语句组A,else 语句组语句组B,endif (表达式表达式1) 语句组语句组A,elseif (表达式表达式2) 语句组语句组B,else 语句组语句组C,end1.4 流程控制语句流程控制语句 n=input( n=), if rem(n, 2)=0 a=even, else a=odd, end n = 7 a =odd; n = 8 a =even n = a =odd n=input( n=), if isempty(n)=1 a=empty, elseif rem(n,2)=0 a=even, else a=odd, end n = a =empty 输入数输入数n,判断奇偶性。如果用户没有键,判断奇偶性。如果用户没有键入