网站大量收购闲置独家精品文档,联系QQ:2885784924

zzy第6章M文件和函数句柄课件.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
zzy第6章M文件和函数句柄课件

M文件和函数句柄 MATLAB控制流 MATLAB程序:由较多的MATLAB指令和多种多样的MATLAB表达式组成,并循着一定的执行次序运行。这种程序的扩展名为.m。这就是脚本M文件或函数M文件。 MATLAB控制流 作为一种计算机编程语言,MATLAB提供了多种用于程序流控制的描述关键词(Keyword)。本节只介绍其中最常用的条件控制(if, switch)和循环控制(for, while, continue, break)。由于MATLAB的这些指令与其它语言相应指令的用法十分相似,因此本节只结合MATLAB给定的描述关键词,对这四种指令进行简要的说明。 if-else-end条件控制 if-else-end指令为程序流提供了一种分支控制,它最常见的使用方式见下表: 【例6.1.1】 function y=exm060101(x) % y=exm060101(x) Function calculate of example 6.1-1 %函数参数x是一个向量 n=length(x); for k=1:n if x(k)-1 y(k)=x(k); elseif x(k)=1 y(k)=exp(1-x(k)); else y(k)=x(k)^3; end end 运行事例: x=[-2,-1.2,-0.4,0.8,1,6] y=exm060101(x) x = -2.0000 -1.2000 -0.4000 0.8000 1.0000 6.0000 y = -2.0000 -1.2000 -0.0640 0.5120 1.0000 0.0067 switch-case控制结构 【例6.1-2】 clear; for k=1:10 a(k)={89+k};b(k)={79+k};c(k)={69+k};d(k)={59+k}; end; c=[d,c]; % A=cell(3,5); A(1,:)={Jack,Marry,Peter,Rose,Tom}; A(2,:)={62,83,56,94,100}; % for k=1:5 switch A{2,k} case 100 r=满分; case a r=优秀; case b r=良好; case c r=及格; otherwise r=不及格; end A(3,k)={r}; end for循环和while循环 例:创建Hilbert方阵 A2 = zeros(K,K); for m = 1:K for n = 1:K A2(m,n) = 1/(m+n -1); end end N=1000; n=repmat(1:N,N,1); m=n; A3=1./(n+m-1); 【例6-4】 function [S,N]=exm060104(epsilon) % [S,N]=exm060104(epsilon) % Calculate the sum of a special series S=1+1/(1+2)+…+1/(1+2+…+N) % S Sum of a special series % N The minimum among all numbers to have 1/sum(1:N)epsilon % epsilon Given accuracy k=0; s=0; d=inf; S=0; while depsilon k=k+1; s=s+k; d=1/s; S=S+d; end N=k; 例5:创建n阶魔方矩阵,限定条件是n为能被4整除的偶数 clear clc while 1 n=input(请输入一个能被4整除的正整数! n = ); if mod(n,4)==0 break end end G=logical(eye(4,4)+rot90(eye(4,4))); m=n/4; K=repmat(G,m,m); N=n^2; A=reshape(1:N,n,n); A(K)=N-A(K)+1 控制程序流

文档评论(0)

gm8099 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档