以前在脚本中程序是按照顺序来执行的,限制性第一行,再执行第二行…
但有时想要根据不同的情况执行不同的语句这就要用到判断语句if了.

if语句的表达形式相当于:如果…那么…
表达形式为:

if condition    %condition就相当于执行一个动作的条件,输出的结果其实是逻辑判断 true 1或者false 0,以此来选择是否执行actionaction       %如果condition是true 1,则action将会被执行,如果condition是false 0,则直接跳到endend

如:输入一个数,如果它小于零,则让该值变成绝对值

num=-4
if num < 0num = abs(num)
end


如:输入一个数,如果它小于零,则让该值变成绝对值

num=input('请输入一个数: ');fprintf('%f 的绝对值是 %f\n',num,abs(num)')
num=input('请输入一个数: ');
abs_num = abs(num)fprintf('%f 的绝对值是 %f\n',num,abs_num')
num=input('请输入一个数: ');
if num < 0
abs_num = abs(num)
end
disp('ok,我们取该负数的绝对值')fprintf('%f 的绝对值是 %f\n',num,abs_num')

检测一个数是否是大于100的,如果是大于100的话输出:该数超出100了

num = input('please input a number: ');
if num > 100 ;
disp('这个数超出100了')
end

输入两个数a和b,检测如果a<b则输出a,a+1,a+2,a+3…b;
如果 a > b则输出b,b+1,b+2,b+3…a;
如果 a = b则输出1

a = input('please input a number a:');
b = input('please input a number b:');
if a < b v = a:b
end
if a > b v = b:a
end
if a == b v = 1
end


%建立一个脚本
function v = seq(a,b)
if a < b v = a:b
end
if a > b v = b:a
end
if a == b v = 1
end
% 然后在命令行窗口里输入seq(number1,number2)即可调用该脚本




输入两个数a和b,从两个数中最小的,每次加1,一直到两数中最大的。

%建立一个新的seq_2的脚本function v = seq(a,b)
min(a,b):max(a,b)
end


创建一个自动回复脚本,如果输入的是Y,则输出positive command received。如果输入的是N,则输出negative command received。

%在脚本里创建AutoReply
function AutoReply
Reply = input('please input a Reply N/Y: ','s') %使用input语句时matlab期望输入的是一个数字,如果是个字符的话需要告诉matlab,因而要加上's'即是.
if Reply == 'N'  %在if之后需要紧跟condition,不能空到下一行disp('Positive command received')
end
if Reply == 'Y'disp('Negatave command received')
endend

上一个自动回复脚本中,只能输入N和Y,如果想让其识别大小写,则在condition里加一个“或”即可,但是不能为if Reply == ‘N’ || ‘n’

function AutoReply
Reply = input('please input a Reply N/Y: ','s')
if Reply == 'N'|| Reply =='n'disp('Positive command received')
end
if Reply == 'Y'|| Reply =='y'disp('Negatave command received')
endend

不能为if Reply == ‘N’ || 'n’的原因是:
因为matlab是按顺序从左到右依次处理的,if是按照logical处理的,而logical里的所有字符都会输出true1。因而相当于是直接执行action.
具体可看如下:无论a取多少是不是1或2,logical(a=1||2)输出都是true1。
其实语句的意思应该是a等于1或a等于2,而不是a等于1或2.

Matlab中条件语句if详解相关推荐

  1. Python中import语句用法详解

    一. 什么是模块(module)? 在实际应用中,有时程序所要实现功能比较复杂,代码量也很大.若把所有的代码都存储在一个文件中,则不利于代码的复用和维护.一种更好的方式是将实现不同功能的代码分拆到多个 ...

  2. Matlab中unwrap函数内容详解

    unwrap函数详解 一般在我们计算一个系统相频特性时,就要用到反正切函数提取相位,计算机中反正切函数规定,在一.二象限中的角度为0-pi,三四象限的角度为0--pi.但实际得到的结果会发生相位跳变, ...

  3. 使用php中的switch,php中switch语句用法详解_PHP

    本文介绍php中的switch语句的用法,它跟其他语句中的switch用法差不多的,但注意有有一个break语句. PHP中switch语句的标准语法: switch (expression) { c ...

  4. matlab中的eps函数详解

    最近开始使用matlab,在写代码过程中遇到了除数为0的情况,在分母位置加了eps就没有报错了,所以查了下eps函数的用法,在这里分享一下,也当作是自己的学习记录! 首先matlab中eps是一个函数 ...

  5. Java中if条件语句举例详解

    1.单分支if 语法: if(符合条件){执行语句; } 符合条件--必要参数,表示最后返回的结果必须是一个布尔值.可以只是一个布尔值变量或者常量,也可以是使用关系或布尔运算符的表达式. 执行语句-- ...

  6. Matlab中条件语句-if, elseif, else使用

    目录 语法 说明 示例 使用 if.elseif 和 else 指定条件 比较数组 测试数组的相等性 比较字符向量 测试值的不相等性 评估表达式中的多个条件 if, elseif, else是条件为 ...

  7. java中switch语句用法详解

    1.switch语句的基本语法 int week =**: switch(week){//week为定义的变量 case **://case 之后使用空格再加 满足week的值 执行语句//当满足此c ...

  8. Shell脚本之——条件语句if详解

    文章目录 一.test命令 1.2.格式 1.2.实例操作 二.文件测试 2.1.格式: 2.2.常用的测试操作符 2.3.实例操作 三.整数值比较 3.1.格式 3.2.常用的测试操作符 3.3.实 ...

  9. java中static{}语句块详解

    原文地址:http://blog.csdn.net/lubiaopan/article/details/4802430     感谢原作者! static{}(即static块),会在类被加载的时候执 ...

最新文章

  1. python真的超过java了吗-JAVA会被Python超越成为世界上第一大编程语言吗?
  2. Php官方指导安装与配置
  3. CubeMX的代码生成设置
  4. 剑指offer之顺时针打印矩阵
  5. 微信小程序富文本组件mp-html
  6. 电影售票系统项目介绍
  7. xpath helper用法
  8. [技术评论]龙芯电脑
  9. 第二章 Silicon labs EFR32 MG21 验证蓝牙的私有Characteristic的读/写
  10. saas智能营销云平台是什么 大数据营销智能平台 - whale 帷幄
  11. 新手建议收藏!还在为剪辑视频发愁?分享自媒体人必备9类工具
  12. 爬虫|wallhere壁纸批量下载
  13. 【案例 4-2】饲养员喂养动物
  14. 中国财团买得了 Opera,买不了仙童半导体?
  15. 如何为iOS应用训练核心ML模型
  16. webpack2.0+ vue2.0
  17. 【2023 年第十三届 MathorCup 高校数学建模挑战赛】 B 题 城市轨道交通列车时刻表优化问题 42页论文及代码
  18. [NOIP2002 普及组] 选数 dfs筛素数
  19. 基于51单片机的信号发生器
  20. 记录TTL的两种含义

热门文章

  1. win10+ubuntu18.04 双系统下,Ubuntu扩容
  2. 国产芯片之电子秤方案芯片
  3. Python Turtle库画一个美国国旗
  4. mac 安装HomeBrew(100%成功)
  5. 《ASP.NET Core 6框架揭秘》实例演示[18]:HttpClient处理管道
  6. 南京李先森硬盘磁头损坏数据恢复案例
  7. 【CVPR2018】论文整理(收藏这一篇就够了)
  8. 浅谈在线并行计算框架
  9. 位操作---置位(置1)、清除和取反
  10. QGIS批量向XYZ Tiles加载地图