第七讲 matlab程序设计

更新时间:2023-08-25 13:12:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

MATLAB 语言程序设计Time the study pain is temporary, has not learned the pain is life-long.

第七讲 程序设计1 M文件及分类 2 M文件的基本流程 3 M文件的控制

1. M文件及分类MATLAB 作为一种高级计算语言,它不仅可以如 前几章所介绍的那样,是以一种人机交互式的命令 行的方式工作,还可以像C等其它高级计算机语言 一样进行控制流的程序设计,即编制一种以m为扩 展名的文件,简称为M文件.而且,由于MATLAB本 身的一些特点,如语言简单、可读性强、调试容易 及调用方便等。因此Mathworks公司又把它称为 第四代编程语言。

1. M文件及分类M文件的的特点与形式 MATLAB是一种解释性语言,可以对用户发出 的命令起解释执行的作用,这样用户就可以把 所要实现的指令按顺序组合到一起编成文件, 由系统统一执行,这就是M文件。M文件可以 分为两种: 命令式(Script),函数式 命令式 函数式(Function)

1. M文件及分类命令式文件 由于命令式文件的运行相当于在命令窗口中逐行输入 并运行命令,因此,用户在编辑此类文件时,只需把 所要执行的命令按行编辑到文件中,且变量不需预先 定义。由于此文件相当于逐个执行各命令,因此其中 间变量会占用内存,因此在编辑较复杂程序时尽量不 用此方法。

1. M文件及分类函数式文件 函数文件可以传递参数,其标志是第一行必须以 function 说明函数,其形如: function <因变量>=<函数名>(<自变量>) 其它各行为从自变量计算因变量的语句,并最终将计 算结果赋予因变量。 这个M文件的文件名必须是<函数>.m。

1. M文件及分类function [mean, stdev]=stat(x) % STAT Mean and standard deviation % mean ……, stdev……. [m n]=size(x); if m = =1 m = n; end mean=sum(x)/m; stdev=sqrt(sum(x.^2)/m-mean^2);

1. M文件及分类函数式文件的编写规则 函数式文件由五部分构成: 1.函数定义行; 2.H1行; 3.函数帮助文本; 4.函数体; 5.注释。

1. M文件及分类函数式文件中的变量一般是局部变量,它们的变量名 独立于目前的工作区和其的函数,即函数的中间变量 在函数运行结束时自动消失,不影响工作空间。在工 作区和函数的定义中可以用global命令把某些变量说 明为全局变量。

1. M文件及分类文本文件 定义行 无需定义行 函数式文件 必须有定义行 有 通过输入输出变量传 输数据 复杂,完成指定功能 MATLAB功能扩展

输入输出变量 无 数据传输 编程方法 用途 直接访问工 作空间 一些可执行 语句 重复操作

1. M文件及分类永久变量 nargin , nargout 它们可自动给出输入输出变量的个数,利用它可以编 写适用性更强的程序,这是其它编程语言所不具有的 功能,在MATLAB工具箱中有很多

函数都用到了这样 的变量。例如:eig , ode45 等。

2. M文件的基本流程循环语句 MATLAB语言中提供了两种循环方式,for循环和while 循环 1.for循环 for循环的最大特点是,它的循环判断条件是对循环次 数的判断,循环变量是以数组形式表示.

2. M文件的基本流程其格式为: for <循环参数>=<初值>:<步长>:<终值> <语句> end 或者: for <循环参数>=<某数组> <语句> end

2. M文件的基本流程vx=[7 3 10 5]; %定义数组 vy = zeros(size(vx)); %生成空数组 k = 0; %初值 for x=vx %循环变量为数组 k=k+1; vy(k)=x.^2; end disp([vx;vy])

2. M文件的基本流程clear; a=[1 2 3;2 3 4;4 3 2] for i=a k=i(1); b(:,k)=i.^k; end disp(b)

2. M文件的基本流程2.while 循环 while循环也称不定次循环,其每次循环前要判别条件, 若条件为真或非零值,则循环,否则结束循环.而条件则 是一表达式.其格式为: while <关系表达式> <语句> end

2. M文件的基本流程例如: v=[1 2 3 4 0 5 6 0]; a=[];k=1; while v(k) a=[a v(k).^3]; k=k+1; end disp(a)

2. M文件的基本流程条件语句 if 它可根据逻辑表达式的值选择是否执行某语句, 它可 以多层嵌套使用来完成更复杂的设计任务. 最简单用法: if <关系表达式> <语句> end

2. M文件的基本流程另一种用法: if <关系表达式> <语句1> else <语句2> end

本文来源:https://www.bwwdw.com/article/7pqi.html

Top