首页 > 编程语言 >Day12_0.1基础学习MATLAB学习小技巧总结(12)——程序流程控制3-switch结构

Day12_0.1基础学习MATLAB学习小技巧总结(12)——程序流程控制3-switch结构

时间:2024-09-01 23:51:52浏览次数:11  
标签:case disp 12 end 0.1 程序流程 语句 switch otherwise

利用空闲时间把碎片化的MATLAB知识重新系统的学习一遍,为了在这个过程中加深印象,也为了能够有所足迹,我会把自己的学习总结发在专栏中,以便学习交流。

素材来源“数学建模清风”

特此说明:本博客的内容只在于总结在使用matlab中的一些小技巧,并非教程,若想系统的学习MATLAB,也可以移步去链接中的视频,观看学习。也欢迎各位在留言区补充,纠错,讨论。

原素材和学习视频地址:MATLAB教程新手入门篇(上部分)(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili

补:switch结构

除了选择使用 if、elseif和 else 命令之外,用户还可以使用 switch 结构。使用 switch结构编写的任何程序也都可以使用f结构进行编写。但是,对于一些应用来说,用switch结构编写的代码可读性比使用f结构编写的代码可读性要好。switch结构的语法是:

switch 输入表达式(标量或字符串)
  case 值1
    语句组 1
  case 值2
    语句组 2
.
.
.
  otherwise
    语句组n
end

在 MATLAB 中,输入的表达式会与每个 case 值进行比较。如果它们相等,则执行紧随 case 语句之后的指令,然后程序继续执行 end 语句之后的任何指令。如果输入表达式是字符串类型,且 strcmp 函数返回 1(即 true),则表示它与 case 值相等。程序只会执行第一个匹配的 case。如果没有任何 case 匹配,程序将仅执行 otherwise 语句之后的指令。需要注意的是,otherwise 语句是可选的,如果没有提供该语句,程序将在没有匹配的情况下继续执行 end 语句之后的指令。每个 case 值必须单独占据一行。

例如,假设变量 angle 存储一个整数值,该值表示从正北方向开始测量的角度(单位为度)。以下的 switch 结构展示了与某个角度对应的指南针方向。

switch angle
  case 45
    disp('Northeast')
  case 135
    disp('Southeast')
  case 225
    disp('Southwest’)
  case 315
    disp('Northwest')
  otherwise
    disp('Direction Unknown')
end

使用字符串变量作为输入表达式通常可以提高程序的可读性。

例如,在以下代码中,数值向量 x 已被赋值,而用户输入的字符串变量 response 的值可以是 min、max 或 sum。接着,代码会根据用户的输入计算出 x 中的最大值、最小值或所有元素的总和。

t=[0:100]; x= exp(-t).*sin(t);
response = input('Type min, max, or sum.','s’)
response = lower('response’);
switch response
  case min
    minimum = min(x)
  case maX
    maximum = max(x)
  case sum
    total = sum(x)
  otherwise
    disp("You have not entered a proper choice.’)
end

通过将 case 值放入一个单元数组中,switch语句就可以在一条 case 语句中处理多个条件。

例如,以下 switch 结构显示了指南针上那些对于固定从北方开始测量的整数角度的对应点。

switch angle
  case {0,360}
    disp('North’)
  case {-180,180}
    disp('South’)
  case {-270,90}
    disp('East')
  case {-90,270}
    disp("West')
  otherwise
    disp(Direction Unknown')
end

标签:case,disp,12,end,0.1,程序流程,语句,switch,otherwise
From: https://blog.csdn.net/qq_47248729/article/details/141792317

相关文章

  • 1312. 让字符串成为回文串的最少插入次数
    1312.让字符串成为回文串的最少插入次数给你一个字符串s,每一次操作你都可以在字符串的任意位置插入任意字符。请你返回让s成为回文串的最少操作次数。「回文串」是正读和反读都相同的字符串。示例1:输入:s="zzazz"输出:0解释:字符串"zzazz"已经是回文串了,所......
  • CSP2024-12
    A题意:\(n\)块饼干,每块饼干有温度\(t_i\),吃一块饼干的代价等于\(\vertt_i-lst\vert\),\(lst\)表示吃/喝的前一样饼干/水的温度。给出初始水温\(w\),现在先喝一口水,以任意顺序吃掉\(n\)个饼干,求最小和最大的代价分别是什么。最小:\(\max(w,\maxt)-\min(w,\mint)\)......
  • B3928 [GESP202312 四级] 田忌赛马
    题目描述你要和田忌赛马。你们各自有 NN 匹马,并且要进行 NN 轮比赛,每轮比赛,你们都要各派出一匹马决出胜负。你的马匹的速度分别为 u_1,u_2,\cdots,u_nu1​,u2​,⋯,un​,田忌的马匹的速度分别为 v_1,v_2,\cdots,v_nv1​,v2​,⋯,vn​。田忌会按顺序派出他的马匹,请问你要......
  • 31263 / 32004 Game Development
    31263/32004GameDevelopmentLabWeek4GettingStarted1.Downloadthecorrespondingweek’szipfilefromthisweek’smoduleonCanvas.2.UnziptheprojectfolderandopenitinUnity.Ifthereareanywarningsaboutdifferenceinversions,justconti......
  • VMware虚拟机安装Debian12
    一、安装环境准备二、虚拟机前置配置三、修改硬件配置四、首次开启虚拟机的初始化配置五、首次进入系统界面的配置六、Debian12换源操作一、安装环境准备虚拟机VMware版本:16真机系统:WIN10X64真机内存:16G镜像下载地址①网易开源镜像站:Indexof/debian-cd/12.5.0/amd......
  • 基于微信小程序的古代天文知识科普系统设计与实现 120b0
    博主介绍......
  • 什么抠图软件好用?12款日常好用的电脑版抠图软件推荐!
    无论是制作海报,还是网站素材,这个操作都经常会用到,但是即便对于专业设计师而言,也是需要花费一定的时间去操作,所以一些有用的智能抠图技巧,甚至是一键抠图,就是你的不二选择!今天,通过测评90+款抠图工具,俺挑选出比较好用的12款,并且对比他们的优缺点,帮你快速筛选适合自己的那一个!1.P......
  • Lecture 12 Real-time Ray Tracing
    Lecture12Real-TimeRayTracingBasicideasampleperpixelPPS1SPPpathtracing=$$\downarrow$$camera出发打到求出第一个交点(像素上看到的点),这一步是primaryray(工业上实际用rasterization)工业上这一步有一个技巧将这一步改为光栅化因为每个像素都要从camera出......
  • 机械学习—零基础学习日志(如何理解概率论12)
    假设检验假设检验是有一些参数,已知条件,让你检验某种假设是否成立。我们通过具体的题目来说明:这里我们需要确认使用什么公式:使用下面的公式如下图:题目中,以21作为分界线,所以我们将是21与不是21两种对应的数值进行计算。具体计算使用到图中的公式。算出对应的数值,然后比......
  • Linux Debian12安装flameshot火焰截图工具
    一、LinuxDebian12安装flameshot打开终端,运行:sudoaptinstallflameshot安装成功后,使用下面命令查看帮助信息:flameshot-h其中flameshotlauncher命令可以打开启动器。二、使用flameshot截图方法打开终端,输入下面命令:flameshotlauncher打开启动器可以进行新的截......