我们前面各节所介绍在MATLAB所做的运算,是适合于所要计算的算式不太长或是想以交谈式方式做运算,如
果要计算的算式很长有数十行或是须要一再执行的算式,则那样的方式就行不通了。MATLAB提供了所谓的
M-file
的方式,可让使用者自行将指令及算式写成巨集程式然后储存成个特别的档案,其附加档是m,譬如 test.m,其中的test就是档案名称。至于要撰写程式可以用任何一种编辑软体(如
Win3.1的记事本或是Dos下的 PE2)或是文书处理软体(如 Word, AmiPro),但是储存格式必须是
Ascii 的格式。在指令视窗中的功能选单 可以选择File 再选择New,即进入指定的编辑软体或是文书处理软体。当程式写完后要存档时,必须以.m
档名称储存。要执行 M-file 可以在指令视窗下直接键入该档名如test;或是选择功能表上的Run M-file来找到 M-file
的所在目录再执行M-file。Open M-file, Run M-file。如果要修改
M-file 可以选择功能表上的Open M-file ,即可搜寻要修改的 M-file,修改后再存档。
以下的tutex1.m档是一个简易绘图程式做为示范使用M-file
% M-file, tutex1.m
% Simple plot for illustration of using M-file.
% 简易绘图以做为示范使用M-file
x=linspace(0,2*pi,20); y=sin(x);
plot(x,y,'r+')
xlabel('x-value')
ylabel('y-value')
title('2D plot')
写好上述程式后即可在指令视窗下键入tutex1,即可执行已建立的tutex1.m 程式。
再来看另一个 M-file: tutex2.m 的例子
% M-file, tutex2.m
% 计算一个球的体积
r = input('Type radius:');
area=pi*r^2;
volume=(4/3)*pi*r^3;
fprintf('The radius is %12.5f\n',r)
fprintf('The area of a circle is %12.5f\n',area)
fprintf('The volume of a sphere is %12.5f\n',volume)
![]()