MATLAB使用速成 第四章(逻辑函数和控制结构)

2024-04-20 12:52

本文主要是介绍MATLAB使用速成 第四章(逻辑函数和控制结构),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、关系运算和逻辑运算

1、关系运算

(1)关系运算符:

<

小于

<=

小于等于

>

大于

>=

大于等于

==

等于

~=

不等于

(2)与大多数编程语言一样,关系运算符用于比较两个操作数,如果结论是真则返回1,否则返回0。

(3)关系操作符可以比较两个同样大小的矩阵(或矢量),两个矩阵(或矢量)中的每一个元素相比较,返回一个由各元素比较结果(0和1)构成的矩阵(或矢量);关系操作符还可以用来比较一个矩阵(或矢量)和一个标量,标量和矩阵(或矢量)中的每一个元素相比较,返回一个由标量与矩阵(或矢量)各元素比较结果(0和1)构成的矩阵(或矢量)。

(4)举例:

2、逻辑运算

(1)逻辑运算符:

&

与【A&B等价于and(A,B)】

|

或【A | B等价于or(A,B)】

~

非【~ A等价于not(A)】

xor(x,y)

异或

(2)逻辑运算规则(0表示“假”,非零表示“真”):

运算对象

异或

A

B

A&B

A|B

~A

Xor(A,B)

0

0

0

0

1

0

0

1

0

1

1

1

1

0

0

1

0

1

1

1

1

1

0

0

(3)逻辑运算函数:

①any(X):如果向量X中存在非零元素则返回1,否则返回0。(若X为矩阵,则按列运算,返回一个由0和1构成的向量)

②all(X):如果向量X中所有元素都非零则返回1,否则返回0。(若X为矩阵,则按列运算,返回一个由0和1构成的向量)

(4)一些测试函数:

isfinite(x)

若x为有限值,返回真值1,否则返回0

isinf(x)

若x为无穷大,返回真值1,否则返回0

isnan(x)

若x为不定值,返回真值1,否则返回0

isreal(x)

若x无虚部,返回真值1,否则返回0

isstr(x)

若x为一个字符串,返回真值1,否则返回0

isempty(x)

若x为空,返回真值1,否则返回0

3、find命令

(1)find(A):找出矩阵(或矢量)A中所有非零元素所在的下标。

(2)find(条件):找出矩阵(或矢量)A中符合条件的元素所在的位置。

4、运算符的优先级

二、程序控制结构

1、顺序结构

(1)顺序结构按排列顺序依次执行各条语句,直到程序的最后。

(2)顺序结构是最简单的一种程序结构,一般涉及数据的输入输出、数据的计算或处理等。

2、选择结构

(1)选择结构根据给定的条件成立或不成立,分别执行不同的语句。

(2)if条件语句:

①if语句的三种结构:

[1]单分支结构:

if <条件表达式>

        <满足条件执行的语句组>

end

[2]双分支结构:

if <条件表达式>

        <满足条件执行的语句组>

else

        <不满足条件执行的语句组>

end

[3]多分支结构:

if <条件表达式1>

        <满足条件1执行的语句组>

elseif 条件表达式2

        <不满足条件1而满足条件2执行的语句组>

 ... ...

elseif <条件表达式m>

        <仅满足条件m执行的语句组>

else

        <不满足所有条件执行的语句组>

end

②if的条件表达式中如果是向量,只有在向量的全部元素为真时条件表达式才为真。

(3)switch语句:

①switch语句可根据表达式的不同取值,分别执行不同的语句。

②switch语句的通式与执行流程:

switch <表达式>      %switch后面的表达式的值可以是一个标量或字符串

        case <表达式1>

                <语句组1>

        case <表达式2>

                <语句组2>

        ... ...

        case <表达式m>

                <语句组m>

        otherwise        %otherwise 指令可以不出现

                <语句组>

end

[1]先计算表达式的值,然后将它依次与各个case指令后表达式的值进行比较,当比较结果为真时,就执行相应语句组,然后跳出switch结构。

[2]如果所有的比较结果都为假,则执行otherwise后面的语句组。

(4)menu语句:

①menu语句可让用户通过图形化的菜单选项来选择需要执行的功能(对应的语句)。

②menu可以有若干个参数(一般参数类型都是字符串),第一个参数可认为是菜单的标题,第二个参数开始可认为是菜单的选项,从左至右分别为菜单的第一选项、第二选项……,选项对应的序号从1开始依次递增1,用户选择第几个选项,menu就会返回该选项对应的序号。

3、循环结构

(1)循环结构根据给定的循环条件,重复执行指定的语句,直到循环条件不满足为止。

(2)for语句:

①for语句的通式与执行流程:

for <循环变量> = <取值列表>    %取值列表通常是一个向量

        <循环体>                 %不要在循环体内改变循环变量的值

end                   %循环语句可以嵌套使用

        for语句将取值列表中的值依次赋给循环变量,直到取值列表的值全部取完,循环结束。

②举例:

[1]已知y=1+\frac{1}{3}+\frac{1}{5}+\frac{1}{2n-1},当 n=100 时,求y的值。

[2]计算s = 1 + 3 + 10 - 28 + 30 + 50 - 12 - 8。

(3)while语句:

①while语句的通式与执行流程:

while <条件表达式>

        <循环体>

end                   %循环语句可以嵌套使用

        当条件表达式的值为真(非0)时,执行循环体语句。

②举例:计算MATLAB中eps的值。

(4)break语句和continue语句:

①break语句用于终止循环的执行,即跳出最内层循环。

②continue语句用于结束本次循环,进行下一次循环。

这篇关于MATLAB使用速成 第四章(逻辑函数和控制结构)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/920316

相关文章

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

使用opencv优化图片(画面变清晰)

文章目录 需求影响照片清晰度的因素 实现降噪测试代码 锐化空间锐化Unsharp Masking频率域锐化对比测试 对比度增强常用算法对比测试 需求 对图像进行优化,使其看起来更清晰,同时保持尺寸不变,通常涉及到图像处理技术如锐化、降噪、对比度增强等 影响照片清晰度的因素 影响照片清晰度的因素有很多,主要可以从以下几个方面来分析 1. 拍摄设备 相机传感器:相机传

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

pdfmake生成pdf的使用

实际项目中有时会有根据填写的表单数据或者其他格式的数据,将数据自动填充到pdf文件中根据固定模板生成pdf文件的需求 文章目录 利用pdfmake生成pdf文件1.下载安装pdfmake第三方包2.封装生成pdf文件的共用配置3.生成pdf文件的文件模板内容4.调用方法生成pdf 利用pdfmake生成pdf文件 1.下载安装pdfmake第三方包 npm i pdfma

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

git使用的说明总结

Git使用说明 下载安装(下载地址) macOS: Git - Downloading macOS Windows: Git - Downloading Windows Linux/Unix: Git (git-scm.com) 创建新仓库 本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git 克隆仓库 执行指令用以创建一个本地仓库的

【北交大信息所AI-Max2】使用方法

BJTU信息所集群AI_MAX2使用方法 使用的前提是预约到相应的算力卡,拥有登录权限的账号密码,一般为导师组共用一个。 有浏览器、ssh工具就可以。 1.新建集群Terminal 浏览器登陆10.126.62.75 (如果是1集群把75改成66) 交互式开发 执行器选Terminal 密码随便设一个(需记住) 工作空间:私有数据、全部文件 加速器选GeForce_RTX_2080_Ti