- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3 程序设计和主要命令
五、程序设计;M文件的形式
(1)命令式(script):命令式文件就是命令行的简单叠加,MATLAB就会自动按顺序执行文件中的命令,这样就可以避免在命令窗口运行许多命令的麻烦和重复行工作,也便于修改。其可在命令窗口直接输入文件名运行;例
%sinfig.m
x=-pi:0.1*pi:pi;
y=sin(x);
plot(x,y);
hold on;
plot(y,x);函数式(function):他主要解决参数传递和函数调用问题,它的第一句以function语句为引导。不能直接运行,只能调用。
例 %f.m 文件名与函数名必须一致
function f(x)
f=2*x^2+4*x+6
在命令窗口中输入:f(0),f(10)可以看
出结果。;例、建立一个名字为f的函数文件,该
函数为
f=cos2(x)
试计算该函数在x=1:10的函数值,
并给出离散点(x,f(x))的图形。
(大家一起讨论);例、一个函数文件可以定义个函数
function [y1,y2,y3] = f(x)
y1=sin(x);
y2=cos(x);
y3=tan(x);
(3)数据文件:用save(‘文件名’,‘变量1’,‘变量2’,……)创建,用load(‘文件名’)调入到工作间。; 控制语句
(1)循环语句
(a)for循环:例
s=0;
for k=1:1:10 %初始值、步长和最大限值
s=s+k;
end %循环结束标志;(b)while循环:例
s=0;
k=0;
while k=9
k=k+1;
s=s+k;
end
s;(c)if……else……end选择语句:例
编写分段函数f(x)=x,(-1=x0);f(x)=x^2,(0=x=1)。
function y=f(x)
if x=-1 x0
y=x;
else
y=x^2;
end ;(d) if…end语句:例
for i=1:10
if i8
a(i)=100
end
end
结果:a =
100 100 100 100 100 100 100; (e) if…elseif…elseif…else…end多重选择语句:例编写函数文件:
function y=f(x)
if x=-1 x0, y=x; elseif x=0 x=1, y=x^2;else,f=0
end
在命令窗口中输入f(1),(3)可以得到结果。;(f)swith 变量
case 1
语句
case 2
语句
……
otherwise
语句
end;例、
for i=1:6
switch i
case 1
a=1
case 2
a=2
case 3
a=3
case 4
a=4
otherwise
b=0
end
end;例 已知n=自己的真实学号,在xoy平面有点
Ai=(i,0)
Bi=(i,n)
(i=0,1,2,……,n)
现要画连接AiBj的线段(i,j=0,1,…,
n),试给出其MAT LAB程序。
解 现就学号为6,给出其程序如下:;n=6;x=0:n;y=0:n;
for i=1:7
for j=1:7
if i==j
plot(x(i)*ones(size(y)),y);
xlabel(x);ylabel(y);title(AiBj的连线)
v=[0,n,0,n];axis(v)
hold on;
else
a=min(x(i),x(j)); b=max(x(i),x(j));
X1=a:0.1*(b
文档评论(0)