MATLAB学习:2.结构化函数与自定义

本文介绍了MATLAB中结构化函数的使用,包括如何进行注释、逻辑关系符、循环与条件控制(如if, switch, while, for, break),并强调了预分配空间可以提高运行效率。此外,还详细讲解了自定义函数的创建,如单个输出、多个输出以及如何处理函数参数。匿名函数的语法也进行了简单介绍,最后给出了相关的小练习供读者实践。" 127065074,11467990,GBase项目管理复盘:研发流程深度解析,"['项目管理', '软件开发', '需求分析', '测试', '质量控制']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2.1 一些Matlab操作

  1. %表示将语句作为注释
  2. %%可以将一段代码作为一个小节单独运行(Ctrl+Enter),利于debug
  3. 每种语句结构中都是要用end对应结尾,嵌套的同样需要
  4. 可利用右键中的注释功能将所有选中的语句注释(快捷键为Ctrl+R)
    在这里插入图片描述
  5. 利用右键中的智能缩进(smart indent)可以将选中的代码变得整洁易懂
    在这里插入图片描述
  6. 显示运算结果:disp(x)
  7. 当使用变量variable输出时,要确定它是否已经被赋值,如果是的话,则需要使用:clear variable将其清空

2.2 函数语句

逻辑关系符

在这里插入图片描述

循环和条件关键字

在这里插入图片描述

if elseif else

在这里插入图片描述

switch

在这里插入图片描述

while

在这里插入图片描述

for

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

break

在这里插入图片描述

2.3 技巧

pre-allocating space:加快运行速度

在这里插入图片描述

B 更快;
故在写程序时,先开辟空间效率比A中的逐个动态开辟空间A(i, j) = ii + jj效率更高

书写换行

MATLAB中的 … 等价于 python中的换行衔接 /

2.4 自定义函数

用>> edit(which(‘functionName.m’))就可以查看该函数的详细信息

在这里插入图片描述
y为output,x为input,mean为functionName
函数名要同保存的文件名一致(即这里要存为mean.m)

单个输出

在这里插入图片描述
在这里插入图片描述
该函数使用了点乘,使得函数可以同时处理输入为向量的情形,即可同时计算多组不同参数的结果(使用Script编写的脚本函数到command windows调用)
如下图所示:
在这里插入图片描述
在这里插入图片描述
第二张图的输入计算了:

  • 初始位移为0,初始速度为0,下落时间为5s
  • 初始位移为0,初始速度为10,下落时间为6s
    这两种情况的结果

多个输出

多个输出,就是修改关键字function后的输出变量形式
在这里插入图片描述
script中为:
在这里插入图片描述
注:同时输出a,F,则在function后将变量写为[x1 x2]
在这里插入图片描述

判断函数参数大小

在这里插入图片描述

  • nargin表示的是函数输入参数的数量;上面的程序段的意思是:若输入的参数数目只有2个,则将height默认设置为1;相当于python中:def pillar(Do,Di,height=1)
  • nargout:函数输出的参数个数
  • varargin:输入参数为列表时的长度

2.5 匿名函数

语法:

f = @(x) experssion(x)
define x

在这里插入图片描述

2.6 小练习

在这里插入图片描述

function Cel = F2C(Fah)
while(true)
    F = input('Temperature in F:','s');   % s表示接收的形式为字符串
    temp = str2num(F);
    if isempty(temp)
        break
    else
        fprintf('Temperature in C: %f\n',(temp-32)*5/9);
    end
end

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值