matlab中if语句多个_科学计算 | MATLAB程序设计基础
点击“蓝字”关注我们
科学计算 | MATLAB程序设计基础
引言
在前面的学习中,我们都是在命令行窗口逐条输入命令,然后由matlab解释执行,这种交互式的命令执行方式,操作简单直观,但是命令执行速度慢,而且执行过程不能保留,如果把命令写成程序,并保留在文件中,就可以重复运行这个程序,这就是命令的程序执行方式。
程序文件
MATLAB提供了实现程序流程控制的语句,利用这些语句可以编写解决实际问题的程序,在MATLAB中程序文件的扩展名为.m,也称M文件。程序文件包括脚本文件和函数文件。
脚本文件是可在命令行窗口直接执行的文件,也叫命令文件。
函数文件是定义一个函数,不能直接执行,而必须以函数调用的方式来调用它。
PS:函数文件必须包含函数声明‘function’
用命令按钮创建文件
用edit命令创建文件
>> edit 输入你想创建的文件名
01
顺序结构
1.数据的输入
A=input('提示信息')
>> A=input('请输入变量A=')请输入变量A=
2.数据的输出
disp(输出项)
PS:不会显示变量的名字和空格,输出格式更紧凑
>> A=[1,2,3];>> disp(A) 1 2 3
3.程序的暂停
pause(延迟秒数)
PS:如果省略延迟时间,就会暂停程序,直到用户按任意键后程序才会继续执行;若要强行中止程序的运行可使用ctrl+c命令。
02
选择结构
1.单分支if语句
语句格式:
if 条件
语句组
end
当条件结果为标量时,非零表示条件成立,零表示条件不成立。
当条件结果为矩阵时,如果矩阵非空,且不包含零元素,则条件成立,否则不成立。
2.双分支if语句
语句格式
if 条件
语句组1
else
语句组2
end
例1:输入输入一个整数,若为奇数则输出其平方根,否则输出其立方根。
3.多分支if语句
语句格式:
if 条件1
语句组1
elseif 条件2
语句组2
…
elseif 条件m
语句组m
else
语句组n
end
例2:输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应数的平方,若为其他字符则原样输出。
4.switch语句
语句格式:
switch 表达式
case 结果表1
语句组1
case 结果表2
语句组2
…
case 结果表m
语句组m
otherwise
语句组n
end
switch表达式应该是一个其值可以列举的表达式
case结果表为switch表达式的取值,当取值有多个时,用单元数据表示,也就是将多个结果用大括号括起来。
例3:输入一个英文单词,判断它是否以元音字母开头。
03
循环结构
1.for语句
格式:
for语句针对向量的每一个元素执行一次循环体。
退出循环体之后,循环变量的值就是向量中最后的元素值。
当向量为空时,循环体一次也不执行。
例1:
按照matlab的定义,for语句的循环变量也可以是一个列向量,其格式为:
for 循环变量=矩阵表达式
循环体语句
end
执行过程是依次将矩阵的各列元素赋给循环变量,然后执行循环体语句,直到各列元素处理完毕循环结束。
思考:下面两个for语句其循环次数相同吗?若不相同,分别是多少?
for k=[1,2,3,4]——执行4次
for k=[1;2;3;4]——执行1次
2.while语句
语句格式:
while 条件
循环体语句
end
while语句多用于循环次数不确定的情况,而对于循环次数确定的情况,使用for语句更方便。
针对不同情况可以选择不同的循环语句,但从功能上讲两种循环语句可以相互替代。
3.break语句和continue语句
break语句用于跳出循环体,结束整个循环。
continue语句用来结束本次循环,接着进行下一次是否执行循环的判断。
例2:求[100,200]之间第一个能被21整除的整数。
04
函数文件的定义与调用
1.函数文件的基本结构
function 输出形参表=函数名(输入形参表)
注释说明部分
函数体语句
PS:当有多个形参时,形参之间用逗号隔开,组成形参表。当输出形参多于一个时,应该用方括号括起来,构成一个输出矩阵。
2.函数调用
调用格式 :
[输出实参表]=函数名(输入实参表)
3. 匿名函数
基本格式:
函数句柄变量=@(匿名函数输入参数)匿名函数表达式
>> f=@(x,y)x^2+y^2f = @(x,y)x^2+y^2>> f(5,6)ans = 61
05
函数的递归调用
函数的递归调用
一个函数调用它自身称为函数的递归调用
1.直接递归调用
2.间接递归调用
例1:利用函数的递归调用,求n!。
06
函数参数与变量的作用域
1.函数参数的可调性
nargin—输入实参的个数
nargout—输出实参的个数
2.全局变量与局部变量
局部变量:在程序中只在特定过程或函数中可以访问的变量。
全局变量 :所有的函数都可以对它进行存取和修改。
全局变量定义格式:
global 变量名
在这个寒冷的时节里
因为有你的关注
而变得温暖
你“在看”我吗?
matlab中if语句多个_科学计算 | MATLAB程序设计基础相关推荐
- 矩阵在Matlab中应用规则,1.3 MATLAB中的矩阵运算免费阅读_详解MATLAB在最优化计算中的应用免费全文_百度阅读...
4.6 线性规划问题的MATLAB求解方法 与一般的线性规划理论一样,在MATLAB中有线性规划的标准型,和前面介绍的一般标准型有类似之处,也有不同之处.在调用MATLAB线性规划函数linprog时 ...
- matlab中sqp的算法原理_最优化方法及其Matlab程序设计 马昌凤
内容简介<最优化方法及其Matlab程序设计>较系统地介绍了非线性最优化问题的基本理论和算法,以及主要算法的Matlab程序设计,主要内容包括(精确或非精确)线搜索技术.最速下降法与(修正 ...
- matlab中的方波信号图片_如何在MATLAB R2019b中导出simulink的各种图片
大家好,这里是玉树的MATLAB小知识讲堂. 今天给大家带来的是,如何在高版本MATLAB(R2018以上)的simulink中,导出我们想要的高清图片. 在做课题作业时,我发现网络中关于导出simu ...
- 在matlab中的循环语句,matlab中循环语句
Matlab软件与基础数学实验 MATLAB编程介绍与循环结构 ★ MATLAB中各种命令可以完成许多单一的任务,对于某些较为复杂的问题,仅靠现有的命令或函数来解决,往 往是难以...... matl ...
- matlab set cdata,matlab中set语句赋值出现输入的参数的数目不足情况,求解决!
不知道什么原因,set(h2(j),'xdata',xi1(:,j),'ydata',yi1(:,j));[同上]这个是不是写错了 你可以参考哈下面的例子看看 http://www.ilovematl ...
- if 结构matlab,matlab中if语句and
请问高手:在matlab中,&和&&的区别 [转]Matlab中的逻辑运算"&&"与"&","||&q ...
- matlab 日期排序_在Matlab中对数据进行排序(Sorting Data in Matlab)
在Matlab中对数据进行排序(Sorting Data in Matlab) 我试图在Matlab中对以下数据进行排序,但没有得到我需要的预期输出. 这是数据: '1B-3A-5A' '1A-3A- ...
- 科学计算 | Matlab 使用 GPU 并行计算
科学计算 | Matlab 使用 GPU 并行计算 本文转载自: https://sanwen8.cn/p/14bJc10.html Matlab下直接使用GPU并行计算(预告)<-- 这预 ...
- commit在c语言中的作用,【单选题】SQL语 言 中 COMMIT语句的主要作用是( )
A. 结束程序 B. 返回系统 C. 存储数据 D. 提交事务...
[单选题]SQL语 言 中 COMMIT语句的主要作用是( ) A. 结束程序 B. 返回系统 C. 存储数据 D. 提交事务 更多相关问题 [判断题]骨与骨之间一般用关节和韧带连接起来. A. 正确 ...
最新文章
- kd-tree理论以及在PCL 中的代码的实现
- pythonwhile循环结束语句_Python while循环语句
- 美团Android DEX自动拆包及动态加载简介
- springboot 打jar 包部署时 读取外部配置文件
- IOS零碎技术整理(3)-获取wifi列表
- macos可以升级到指定版本吗_iOS14如期而至!重大更新的全新版本,值得升级吗?答案在这...
- Object.keys() Object.values()
- 针对 SQL Server 2008 在Windows Server 2008上的访问配置 Windows 防火墙
- 统计出每个班分别有男女生各多少名
- atomic的安全性?
- 《自控力》-自控力极限
- 拍照尺寸 ios_即将收费!11款价值80元iOS限免应用,全部免费下载
- mbedtls学习--对称加密算法
- linux firefox体验,Firefox插件 让你在桌面浏览器体验Firefox OS(附安装教程)
- 淘宝网禁售无证食品和保健品 问题商品将被屏蔽
- 基于Greenplum构建下一代数据分析平台
- LC30 Substring with Concatenation of All Words
- Visual SLAM笔记
- 什么是耦合?耦合是什么意思?
- U盘在自己电脑读不出来,但其它电脑的可以读,别的u盘在自己电脑又可以识别的解决方法
热门文章
- kiss原则包括什么_和女孩牵手与kiss的具体方法
- 设计模式的理解:单例模式(Singleton)
- wdr和hdr的区别
- 小妲己智能机器人要连接wifi吗_“能扫能拖,聪明能干”,360扫地机器人S7一周体验分享...
- python实现排序算法_python实现·十大排序算法之插入排序(Insertion Sort)
- php wp foo,【翻译】WordPress WPDB SQL注入攻击(技术文档)
- python列表冒泡排序_python – 冒泡排序已排序列表
- HTML--三种样式插入方法--链接---表格---列表
- BeanUtils组件
- 树莓派1 安装使用 ZeroTier