第七讲 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
正在阅读:
第七讲 matlab程序设计08-25
最新-安徽省宿州市泗县2018学年高一物理 43 牛顿第二定律教案 新人教版 精品12-30
用第一酯化釜出口IPA含量调整聚酯瓶片转产的过渡时间_一_05-15
2019人教七年级下英语期末U1012复习题(无答案)精品教育 doc03-24
静脉血液采集标准操作规程10-30
如何写好民主生活会剖析材料?02-21
现代微型计算机原理与接口技术课后答案04-08
吨的认识练习课01-27
中国人民解放军各集团军编制战斗序列大全05-02
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 程序设计
- matlab
- 机器装配工艺过程设计
- 远离烟酒主题班会
- 收费系列人员绩效考核管理办法1107版
- 药剂科医疗质量评价体系与考核标准
- 2011-2013学年《管理信息系统》(含练习题3)
- 2012南京工业大学化原答疑完整
- 2016年半导体中蓝宝石行业现状及发展趋势分析
- 地线干扰与抑制
- 2016-2022年中国零售业信息化市场现状调研与发展趋势分析报告
- 2017-2022年中国果冻市场监测与投资咨询报告行业发展预测
- 2018版中国元明粉市场全景评估报告目录
- 美国注册管理会计师CMA考试论述题及答案
- 阿贝成像原理报告
- 青岛国际版权交易中心签约仪式致辞20101227
- 2016-2022年中国旅游市场调查分析与发展前景研究报告
- 浅议客家饮食文化的形成与特点
- 教育局精神文明建设工作汇报
- 2010年初一希望杯
- JSP — Java Web开发
- 最后的姿势 表格式教案