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

相关文章

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

MySQL中EXISTS与IN用法使用与对比分析

《MySQL中EXISTS与IN用法使用与对比分析》在MySQL中,EXISTS和IN都用于子查询中根据另一个查询的结果来过滤主查询的记录,本文将基于工作原理、效率和应用场景进行全面对比... 目录一、基本用法详解1. IN 运算符2. EXISTS 运算符二、EXISTS 与 IN 的选择策略三、性能对比

MySQL常用字符串函数示例和场景介绍

《MySQL常用字符串函数示例和场景介绍》MySQL提供了丰富的字符串函数帮助我们高效地对字符串进行处理、转换和分析,本文我将全面且深入地介绍MySQL常用的字符串函数,并结合具体示例和场景,帮你熟练... 目录一、字符串函数概述1.1 字符串函数的作用1.2 字符串函数分类二、字符串长度与统计函数2.1

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

python使用try函数详解

《python使用try函数详解》Pythontry语句用于异常处理,支持捕获特定/多种异常、else/final子句确保资源释放,结合with语句自动清理,可自定义异常及嵌套结构,灵活应对错误场景... 目录try 函数的基本语法捕获特定异常捕获多个异常使用 else 子句使用 finally 子句捕获所

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali