matlab使用教程2-2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2章 Matlab语言程序设计 章 语言程序设计
写二进制文件: 用fwrite写二进制文件: 写二进制文件 COUNT=fwrite(Fid, A, precision) 例: Fid=fopen(‘test.dat’, ‘w’); cnt=fwrite(Fid, A, ‘float’) fclose(Fid); 读取ASCII数据文件: 数据文件: 用fscanf读取 读取 数据文件 [A, COUNT]=fscanf(Fid, format, size) format用以控制读取的数据格式,由%加上格式符组成, 用以控制读取的数据格式, 加上格式符组成, 用以控制读取的数据格式 常见的格式符有: 常见的格式符有:d, i, o,u, x, e, f, s, c。 。 例:fscanf(Fid, ‘%s’); fscant(Fid, ‘%6.2f’); fscanf(Fid, “%5d’);
第2章 Matlab语言程序设计 章 语言程序设计
d) 其它与流程控制有关的语句
if
if
break语句循环结构 语句循环结构 语句
continue 语句循环结构 语句循环结构
第2章 Matlab语言程序设计 章 语言程序设计
pause 指令使程序运行停止,等待用户按任意键继续; 指令使程序运行停止 等待用户按任意键继续; 使程序运行停止, input 指令提示用户从键盘输入数值、字符串或表达 指令提示用户从键盘输入数值 提示用户从键盘输入数值、 并接受输入; 式,并接受输入; disp指令在屏幕上显示字符串; 指令在屏幕上显示字符串 指令在屏幕上显示字符串 echo on指令显示其后所有执行文件的指令; 指令显示其后所有执行文件的指令 指令显示其后所有执行文件的指令; echo off指令关闭其后所有执行文件的指令显示。 指令关闭其后所有执行文件的指令显示 指令关闭其后所有执行文件的指令显示。
第2章 Matlab语言程序设计 章 语言程序设计
绘出函数
>> x=-3:0.1:3; >> if x>=1 y=2*x.^2+1; plot(x,y) elseif -1<x<1 y=5; plot(x,y) else y=-x.^3; plot(x,y) end
2 x 2 + 1 x ≥1 y =≥ 0 −1 < x < 1 的图像。 的图像。 − x3 x ≤1
上机练习( ) 上机练习(3)
的值。 ( 1)利用 for 循环求 1!+2!+3!…+20!的值。 ) 的值 之间的整数之和。 ( 2)用 while 循环求 1~200 之间的整数之和。 ) ~ 文件,画出下列分段函数所表示的曲面。 ( 3)编写一个 M 文件,画出下列分段函数所表示的曲面。 )
注意: 注意:文件名必须与函数名相同
执行: 执行: fibfun(17), help fibfun, lookfor fibfun
第2章 Matlab语言程序设计 章 语言程序设计
7、M文件调试 、 文件调试 语法错误和 语法错误和运行错误 对于语法错误 语法错误, 通常能在编译和运行时立即发现, 对于语法错误,Matlab通常能在编译和运行时立即发现, 通常能在编译和运行时立即发现 给出相应的错误原因以及所在的行号,并终止其运行。 给出相应的错误原因以及所在的行号,并终止其运行。 对于运行错误 运行错误, 提供了M文件的调试 工具。 对于运行错误,Matlab提供了 文件的调试 提供了 文件的调试(Debug)工具。 工具 对于命令文件,可以直接在文件编辑器中设置断点,用调 对于命令文件,可以直接在文件编辑器中设置断点, 命令文件 试工具(菜单或工具栏)分步执行, 试工具(菜单或工具栏)分步执行,并在工作空间中检查每 个变量的值。( 。(以 为例) 个变量的值。(以necklace.m为例) 为例 对于函数文件 可以先在文件编辑器中设置断点, 函数文件, 对于函数文件,可以先在文件编辑器中设置断点,再到命 令行状态执行函数, 令行状态执行函数,然后再回到文件编辑器中进行观察和调 。(以 为例) 试。(以fibfun.m为例) 为例
第2章 Matlab语言程序设计 章 语言程序设计
b) 函数式文件 函数文件和命令文件的区别在于: 函数文件和命令文件的区别在于:命令文件的变量在文 件执行完程序后仍然保留在内存中, 件执行完程序后仍然保留在内存中,而函数文件内定 义的变量为内部变量 仅在函数文件内部起作用。 内部变量, 义的变量为内部变量,仅在函数文件内部起作用。 函数M文件通常由以下五部分组成: 函数 文件通常由以下五部分组成: 文件通常由以下五部分组成 函数定义行; 函数定义行 函数帮助行; 函数帮助行; 在线函数帮助文件; 在线函数帮助文件; 注释; 注释 函数体。 函数体。
第2章 Matlab语言程序设计 章 语言程序设计
例:编一个画宝石项链 的程序 echo on t=(0:0.02:2)*pi; x=sin(t); y=cos(t); z=cos(2*t); plot3(x,y,z,'b-',x,y,z,'bd') view([-80,60]) box on legend(‘链子’,‘宝 链子’ 链子 ‘ 石’); 存入文件necklace.m 存入文件
第2章 Matlab语言程序设计 章 语言程序设计
6)M文件编程 ) 文件编程 a) 命令式文件 如果要输入较多的命令,而且要经常对这些命令重复输 如果要输入较多的命令, 入,利用命令文件将显得比较简单方便。 利用命令文件将显得比较简单方便。 建立命令文件的方法根简单, 建立命令文件的方法根简单,就是将要输入的所有指令 按顺序放到一个扩展名为“.m”的文本文件中,每次运 按顺序放到一个扩展名为“ 的文本文件中, 的文本文件中 行时只要输入M文件的文件名即可 文件的文件名即可。 行时只要输入 文件的文件名即可。 在命令文件运行过程中产生的所有变量均是全局变量。 在命令文件运行过程中产生的所有变量均是全局变量。
Matlab工程应用基础 工程应用基础
Application of Matlab in Engineering
第2章 Matlab语言程序设计 章 语言程序设计
4、程序结构与流程控制语句 、 a) 顺序结构
第2章 Matlab语言程序设计 章 语言程序设计
b) 条件结构


if- else- end 语句
第2章 Matlab语言程序设计 章 语言程序设计
b) 数据文件的读写 读二进制数据文件: 用fread读二进制数据文件: 读二进制数据文件 [A, COUNT]=fread(Fid, size, precision) 其中: 为数据矩阵 用于存放读取的数据; 为数据矩阵, 其中:A为数据矩阵,用于存放读取的数据;COUNT 返所读取的数据元素个数, 为文件句柄, 返所读取的数据元素个数 Fid 为文件句柄,size为读 为读 取范围,是可选项,若不选用则读取整个文件内容, 取范围,是可选项,若不选用则读取整个文件内容, precision用于控制所读数据的精度格式。 用于控制所读数据的精度格式。 用于控制所读数据的精度格式 例:Fid=fopen(‘std.dat’,’r’); A=fread(Fid,100,’long’); fclose(Fid);
第2章 Matlab语言程序设计 章 语言程序设计
c) 循环结构 while 语句 语句:
for语句 语句: 语句
for 变量=初值:增量:结束值 程序模块; end
第2章 Matlab语言程序设计 章 语言程序设计
举例:
>> sum=0; >> i=0; >> while(i<=100) sum=sum+1; i=i+1; end >> sum sum = 14196774 >> for I=1:10 A(I)=1/(I+1) ; end >> A A= Columns 1 through 7 0.5000 0.3333 0.2500 0.2000 0.1667 0.1429 0.1250 Columns 8 through 10 0.1111 0.1000 0.0909
第2章 Matlab语言程序设计 章 语言程序设计
c) 从磁盘中直接读写内存变量 load将数据文件中的数据直接为 将数据文件中的数据直接为workspace中变量 将数据文件中的数据直接为 中变量 load filename –ascii load filename save将workspace中变量直接写到数据文件中 将 中变量直接写到数据文件中 save filename A, … -ascii save filename A, …
折扣问题
>> book=20; >> number=40; >> sums=0.0; >> if number>=30 sums=book*number*0.7; end >> sums sums = 560
第2章 Matlab语言程序设计 章 语言程序设计
switch语句 语句
第2章 Matlab语言程序设计 章 语言程序设计
第2章 Matlab语言程序设计 章 语言程序设计
5、数据文件的操作 、数据文件的操作 数据文件一般存放在磁盘介质上,用文件名标识, 数据文件一般存放在磁盘介质上,用文件名标识,Matlab 系统对文件名没有特殊要求。数据文件的格式有两种形式: 系统对文件名没有特殊要求。数据文件的格式有两种形式: 一是二进制格式文件,二是ASCII文本文件。 文本文件。 一是二进制格式文件,二是 文本文件 a) 数据文件的打开和关闭 函数打开数据文件: 函数打开数据文件 用fopen函数打开数据文件: Fid=fopen(filename,permission); = , Fid为文件句柄,filename 为文件名。permission 为文件打 为文件句柄, 为文件名。 为文件句柄 开格式,可以是: 开格式,可以是:‘r’, ‘w’, ‘a’, ‘r+’, ‘w+’, ‘a+’。 。 函数关闭数据文件: 用fclose函数关闭数据文件: 函数关闭数据文件 Sta=fclose(Fid);
第2章 Matlab语言程序设计 章 语言程序设计
文本数据到文件或屏幕上: 用fprint写ASCII文本数据到文件或屏幕上: 写 文本数据到文件或屏幕上 COUNT=fprintf(Fid, format, A, …) 例: x=0:0.1:1; y=exp(x) Fid=fopen('exp.txt', 'w') fprintf(Fid, '%6.2f, %12.8f\n',x,y) fclose(Fid);
多项选择
>> No=input('Please input your choice! '); Please input your choice! 1 >> switch No case 0 disp('return to main menu'); case 1 disp('She is a girl'); case 2 disp('He is a boy'); otherwise disp('I can''t determine') end She is a girl
第2章 Matlab语言程序设计 章 语言程序设计
一种整数数列, 例:计算第n个Fibonnaci斐波纳契数 (一种整数数列 计算第 个 斐波纳契数 一种整数数列 其中每数等于前面两数之和) 其中每数等于前面两数之和
function f=fibfun(n) 函数输入; 函数输出 函数输出; 函数名。 函数定义行 n—函数输入;f—函数输出;fibfun—函数名。 函数输入 函数名 % FIBFUN For calculating Fibonacci numbers. 函数帮助行 % Incidengtally, the name fibonacci comes from % Filius Bonassi, or “son of Bonassus” 在线函数帮助文件 % fibfun.m if n>2 f=fibfun(n-1)+fibfun(n-2); 函数体 else f=1; end
相关文档
最新文档