MATLAB 界面
| 控制语句 | 作用 |
|---|---|
if, elseif, else | 如果 condition 为真,执行语句 |
switch, case, otherwise | 根据switch语句内容判断执行哪个子句 |
while | 重复执行子句直到while中的条件为假 |
for | 执行指定次数的语句 |
try, catch | 执行子句并捕获执行过程中的异常 |
break | 跳出循环 |
continue | 直接进入下一次循环 |
end | 结束子句 |
pause | 暂停程序 |
return | 将控制权返回给调用函数 |
控制语句实例:
if 语句
if rem(a, 2) == 0
disp('a is even');
else
disp('a is odd');
end
switch 语句
switch input_num
case -1
disp('negative 1');
case 0
disp('zero');
case 1
disp('positive 1');
otherwise
disp('other value');
end
while 语句
n = 1;
while prod(1:n) < 1e100
n = n + 1;
end
for 语句
for n=1:10
a(n)=2^n;
end
disp(a)
break 语句:x = 2; k = 0; error = inf;
error_threshold = 1e-32;
while error > error_threshold
if k > 100
break
end
x = x - sin(x)/cos(x);
error = abs(x - pi);
k = k + 1;
end
| 脚本 | 函数 |
|---|---|
| 没有输入参数 | 有输入参数 |
| 没有输出参数 | 有输出参数 |
| 对全局工作区中的数据进行操作 | 对本地工作区中的数据进行操作 |
① 在脚本开头应添加语句清空工作区:
clear all % 清空工作区内存中的变量
close all % 关闭之前程序绘制的图像
clc % 清空之前程序在终端的输出
② 在运算和赋值语句后应添加分号;抑制输出
③ 使用省略号...拼接多行语句,提高代码可读性
annPoints_sampled = annPoints(annPoints(:,1)>x1 & ...
annPoints(:,1) < x2 & ...
annPoints(:,2) > y1 & ...
annPoints(:,2) < y2);
创建脚本,请使用 edit 命令。
edit mysphere % 该命令会打开一个名为 mysphere.m 的空白文件,edit 后若为存在的脚本名,则会优先打开已存在的脚本
创建组合了代码、输出和格式化文本的脚本。将代码划分成易于管理、可以单独运行的代码节。查看代码旁边所产生的结果和可视化内容。使用格式化文本、标题、图像和 超链接 增强您的代码和结果。使用交互式编辑器插入方程,或者使用 LaTeX 创建方程。将代码、结果和格式化文本保存到一个可执行文档中。
添加交互式控件,让其他人能试验您代码中的参数。隐藏您的代码,以创建简单的应用程序和控制板。以 HTML、PDF、LaTeX 或 Microsoft Word 的形式发布实时脚本。使用格式化文本、图像、超链接和方程创建实时函数的说明文档。
MATLAB 提供函数参数、文件名等上下文提示,帮助您编写代码。使用交互式工具探索输出的图窗和表。借助自动生成的代码,您可以轻松重现所做的更改。选择代码块来创建可重用的函数。使用完全集成的调试器排查您的代码问题。
使用实时编辑器中的任务完成分析中的各个步骤。交互式探索参数和选项,并立即看到结果。在脚本中为已完成的任务生成代码并预览。将实时编辑器任务另存为实时脚本的一部分,以便共享或后续使用。
创建生动的讲义,集说明文本、数学方程式、代码和结果于一体。您可以逐节运行代码、步步深入主题,并可临时修改代码以演示概念。开发示例以用于说明工程师如何使用数学来解决实际和复杂的问题
通过选择另存为并将文件类型更改为 MATLAB 实时代码文件 (*. mlx ),将 mysphere 转换为实时脚本。然后,用格式化文本替换代码注释。例如:
要使用 edit 命令创建新的实时脚本,在文件名中包含 .mlx 扩展名:
edit newfile.mlx

函数嵌入命令:
格式如下:
function [输出变量名] = 函数名(输入变量名)
% 函数的文档
函数代码
function是一个关键字,声明该文件中保存的是一个函数..m文件名相同,且不包含特殊字符(不要有中文).MATLAB函数定义示例1

function x = freebody(x0,v0,t)
% calculation of free falling
% x0: initial displacement in m
% v0: initial velocity in m/sec
% t: the elapsed time in sec
% x: the depth of falling in m
x = x0 + v0.*t + 1/2*9.8*t.*t;
执行:

MATLAB函数定义示例2
无输入输出
function F2C()
while 1
F_degree = input('tempreature in Fahrenheit: ', 's');
F_degree = str2num(F_degree);
if isempty(F_degree)
return
end
C_degree = (F_degree-32)*5/9;
disp(['tempreature in Celsius: ' num2str(C_degree)])
end
执行:

MATLAB函数定义示例3
多输入多输出

function [a, F] = acc(v2,v1,t2,t1,m)
a = (v2-v1)./(t2-t1);
F = m.*a;
%命令行窗口
>> [Acc Force] = acc(20,10,5,4,1)
我们也可以使用函数句柄的形式定义函数,这更接近数学上的函数定义,其语法如下:
函数句柄 = @(输入变量) 输出变量
函数句柄 = @(输入变量) 输出变量
f = @(x) exp(-2*x);
x = 0:0.1:2;
plot(x, f(x));
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删