【转载】使用「多分支判断」,让程序更智能 | 亲子课堂 第 7 课

linux多分支判断 一、多分支判断 1、判断成绩是否优秀,良好,不及格 (1)编写脚本 [ root@cenetos ~]# vim cheng.sh #!/bin/bash read -p “请输入考试成绩范围1~100:” test if [ $test -ge 85 ] && [ test−le100]thenecho"test -le 100 ] then echo "tes... 阅读详情

森林

地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算机思维,让大家熟悉极客战记的操作与代码的使用。
来到了森林,关卡将会变得更多更难,同样,到了森林,大家就正式开始接触编程的几大重要知识点:

条件判断
运算符
函数
对象属性

发狂的矮人

在这里插入图片描述

关卡简介:

「发狂的矮人」这一关没有什么难点,依旧是照着注释填写即可完成,涉及了条件判断的一种新结构elif,if的多分支语句结构。

通关展示:

在这里插入图片描述

思路讲解

在这里插入图片描述
通过阅读已有代码上的注释,我们能够理解,这段代码要我们做的有三件事:

  1. 如果劈斩(cleave)技能准备好了,则使用劈斩攻击敌人
  2. 如果敌人距离小于5,则attack攻击敌人
  3. 如果上述条件均不满足,则攻击宝箱

上次我们提过,一个路口有两条路,这是双分支语句,而今,这个路口具有三条路,它便是一个三分支语句,或者说是多分支语句。

看到代码中那个看起来较为陌生的单词:elif,它就是产生多分支语句的代码关键词。

知识点:if - elif(条件判断多分支语句)

elif这个单词看起来有些陌生,但把它拆开,你或许就会找到一些熟悉的影子。

else if

elif正是Python里对else if的缩写,则图中的代码其实便是如下图所示

在这里插入图片描述
此时拆开仅为教学说明,非正确用法

if - else我们就比较熟悉了,作为双分支结构,它的作用是当if的条件不满足时,执行else后的代码块。

那么if - elif,就等于是在else后多加了一个条件判断,如果if条件不满足,程序就想要执行else后的代码,那么此时还得看看else的代码是否满足。

借用这个思路,我们就可以多插入几个分支语句,让二选一的局面变成了多选一。

了解了多分支语句的作用后,我们再来看这段代码,就没有那么简单了,它正确的流程应是:

  1. 如果劈斩(cleave)技能准备好了,则使用劈斩攻击敌人
  2. 如果劈斩技能没有准备好(if条件不满足),且敌人距离小于5(elif条件满足),则attack攻击敌人
  3. 如果上述条件均不满足,则攻击宝箱

此时可能就会有了一个问题,

如果有一个很多分支的代码块,第二个分支的条件满足了,执行了相应代码,而第三个,第四个分支的条件也满足,那它们的代码还会被执行吗?

我们可以通过say语句,在每个相应的分支下让英雄说话,以此来更好的观察各代码块有没有被执行,对代码略作修改:
在这里插入图片描述

看看运行情况:
在这里插入图片描述

可以看到英雄从始至终都只讲了一句话:劈斩执行了,而即使敌人跟他的距离已经低于5,它还是不会执行第二个分支,说出第二句话。

因此可知,答案是当一个分支满足执行后,后续分支再也不会被执行

这便是多选一的含义,无论有多少个条件满足,它只会执行第一个满足的代码块,执行结束,就离开了这个路口,后面的代码不再执行。

据此,我们即可轻松理解与完成代码。

通关代码

在这里插入图片描述
以上便是森林关卡「发狂的矮人」的过关教学了~

本攻略发于极客战记
极客战记——学编程,用玩的!

保姆级教程:在Rockchip RK3588 SDK中,如何为你的新硬件板子创建第一个DTS文件 本文提供在Rockchip RK3588 SDK中为自定义硬件创建首个DTS文件的详细教程。通过分析DTS在RK3588开发中的角色、快速定位参考设计、实操步骤及调试验证方法,帮助开发者高效完成硬件板级配置,特别适合嵌入式Linux系统开发者参考。 阅读详情

相关推荐

NBU计算机大二下期末

计算机网络 任课老师:JG (放了一学期的他自己的视频和上了一学期网课没什么区别,甚至不如上网课。。。) 考试题型 填空题10*1 判断题10*1 选择题30*1 简答和计算题30(4题) 讨论题20 强烈建议不要再这门课上花太多时间复习,不然有复习了个寂寞的感觉。。。计网是一页开卷的,一页开卷纸不用写太多,第一他不会考太详细;第二反正最后都要被收走。 填空题、判断题基本看懂了英文就能做的差不多;选择题去网上找点英文题多刷一下问题不大;简答题把书上每章根据他上课的内容在开卷纸上抄下就好,今年是解释check

weixin_45816954的博客 710

让程序变智能的分支结构:if语句

**让程序变智能的分支结构:if语句 1、if语法结构 ①条件执行 if条件表达式:语句体 if根据条件表达式返回的布尔值决定是否执行之后的语句体。布尔值为真,折执行语句体:为假,则什么都不做。 if age>18; pass ②、选择执行 这种情况就会产生分支效果,任然有条件表达式返回的布尔值决定被执行的语句体,语法结构为 if条件表达式: 语句体 else: 语句体 这里多了一个else,当if的条件表达式为false时,就会执行else的语句体。 ③、条件链 有时需要判断的条件不值一个,需要更多

qq_52144223的博客 357

HC32 CAN通信

qqa

zhaopenglihui的博客 5434

第八课,多分支判断

但学过除法的小朋友都知道,0是不能作为除数的,因此如果y是0并且c是’/’,你的程序不应该帮用户计算x/y而是输出“学过除法吗?请根据输入的字符c计算对应的x和y的运算(例如输入的x,y,c分别为10,20,+,那么你就应该计算10+20的结果,以此类推)用户能够输入两个整数x,y和一个字符c(输入的c只可能是’+’、’-’、’*’、’/’这四种运算符)在这个场景中,“男生”是一个前提条件,满足这个前提条件之后、再进行二次判断“力气大”的同学。比如老师说:“下课后,男生里力气大的同学,留下来帮老师搬东西。

这个博主不懒,但Ta什么也没写~(私信互关24小时必回) 746

Clang Static Analyzer 使用教程:本地 + CMake + GitHub Actions 自动静态分析实战

本文介绍了ClangStaticAnalyzer静态代码分析工具的使用方法。该工具基于Clang/LLVM,可检测C/C++代码中的内存泄漏、空指针等常见错误。主要内容包括:安装指南(Ubuntu/macOS/Windows)、命令行使用方法、CMake项目集成方案、GitHub Actions自动化分析配置,以及HTML报告生成与查看。文章还提供了官方资源链接,帮助开发者系统掌握从本地调试到持续集成的完整静态分析工作流,提升代码质量保障能力。适用于需要在开发过程中实施静态分析的C/C++项目。

u014358031的博客 2158

条件DDPM:Diffusion model的第三个巅峰之作

前言:DDPM从2020年诞生,短短一年的时间,模型上有两个巨大的改进,其中一个就是condition的引入,最近大部分DDPM相关的论文都会讨论这一点,有些文章称之为latent variable。和当年GAN的发展类似,CGAN和DCGAN的出现极大程度上促进了GAN的发扬光大,意义重大。本文基于前面几篇文章继续聊一聊: 从VAE到Diffusion Model_沉迷单车的追风少年-优快云博客 为什么diffusion model扩散模型可以称为score-based models?_沉迷单车的.

沉迷单车的追风少年 1万+

4、多分支判断 - 课件

这里的判断条件1, 判断条件2, 判断条件3等都是布尔表达式,它们的值只能是true或false。这些判断条件可以是各种各样的,例如:a > ba < ba >= ba <= ba == ba!= b!判断条件在这个例子中,我们使用了比较运算符和number > 0number > 0number < 0number > 0number < 0通过使用具体的判断条件,我们可以让多分支判断的逻辑更加清晰和易于理解。在实际编程中,你可以根据具体问题的需要,使用各种不同的判断条件。

m0_46192147的博客 521

uniapp [全端兼容] - 详细实现拍照或相册选取图片后插入水印功能,手机拍照或相册上传图像并添加自定义水印及指定位置显示水印,uniApp给图片加水印后上传到后端服务器或保存到本机相册详细教程!

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,图片水印,上传照片带水印,从相册选择图片加水印功能,拍完照片给图片加水印,添加照片水印,uniapp图片加水印,为图片添加自定义水印,uni-app上传图片并添加水印,上传图片加水印,uni-app如何对拍摄的照片加水印,uni-app实现图片上传添加水印操作,给上传的图片添加上水印,图片加完水印后如何上传到服务器,水印相机,拍照图片加水印,相册选取后给图片加上水印,渲染失败,无法保存,文字水印,日期

🏆 前端领域优质创作者 1万+

分支语句(多分支)怎么去判断if else语句后边条件的罗列

分支语句的基础知识 除了平时经常使用的if else语句之外,我们还可以去使用三元运算符去运算一些简单的多分支语句。switch(变量或表达式)。if else分支语句和switch的循环语句的区别 分子语句的经典案例

qq_73743544的博客 423

deepstream车道线检测自定义插件化,其中要注意pipeline的配置,如果插件位置配置不对,会报input format should be RGBA when using blur-obje

以上代码中,我们先从对象池中获取一个 DsUserMeta 对象,然后使用 get_lane_line_from_frame 函数获取车道线检测结果,并使用 add_lane_line_meta 函数将其添加到 DsUserMeta 对象中。注意,上述代码中的 get_lane_line_from_frame 函数和 add_lane_line_meta 函数需要你自己实现,用于从视频帧中提取车道线检测结果,并将其添加到 DsUserMeta 中。

pvmsmfchcs的博客 690

一次搞懂 OData Deep Create:在 ABAP Client Proxy 中优雅完成父子实体的一键插入

摘要: 本文面向熟悉SAP Gateway与OData的ABAP工程师,详解Deep Create的核心概念与实现。Deep Create允许在一次请求中原子化创建主实体及其关联子实体(如Team与Manager),解决多次HTTP请求导致的脏写问题。对比OData v2/v4协议差异后,重点阐述ABAP Client Proxy中通过Data Description Node构造层级数据描述树的方法,包括根/子节点定义、属性对齐及业务数据绑定。提供可复用的ABAP代码骨架,并区分Deep Create与$

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 190

【分支控制(if-else判断)】单分支-双分支-多分支-嵌套分支

在程序中, 程序运行的流程控制决定程序是如何执行的, 是我们必须掌握的, 主要有三大流程控制语句.

Jean·z的博客 1960

【读代码】从claude skills到superpowers项目

最近claude skills成了大热门,今天一起看下GitHub 上的开源技能框架,他将“工作流”封装为“技能” (Skills)。本文尝试剖析该项目的技能粒度定义、多技能关联架构、应用逻辑等。与传统的 Function Calling 不同,Superpowers 中的 Skill 定义粒度并非“原子操作”,而是**“认知模式” (Cognitive Mode) 或“工作阶段”**。

kakaZhui的博客 1921

C语言-多分支条件判断、循环结构的使用(switch、if、while、for、do while含for嵌套使用)

否则,即num等于0,则输出“The number is zero.”。如果day等于2,则输出“Tuesday”,以此类推。如果day不等于1到7中的任何一个数字,则输出“Invalid input”。在这个例子中,我们使用两个for循环嵌套来计算1到100的所有偶数的和。外层循环从1到100遍历每个数字,内层循环从2到当前数字遍历每个数字的因子。如果当前数字能够被某个因子整除,则将其加入到sum中,并跳出内层循环。for循环是一种更通用的循环结构,它可以用于执行固定次数的循环。

weixin_64038705的博客 2093

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Thinking--复杂逻辑多分支判断优雅写法

Array.prototype.find() 方法返回数组中满足提供的测试函数的第一个元素的值。

李刚的学习专栏 535

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

shell脚本之多分支条件判断语句

shell脚本之多分支条件判断语句

m0_60203354的博客 2901

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【JavaScript】利用if实现多分支判断语句

利用if实现多分支判断语句,注释的为普通版,未注释的为进阶版

A Lucky Boy的博客 1410

excel表如何实现多if选择结构多分支判断

excel表如何实现多if选择结构多分支判断 一、总结 一句话总结:把多if分支转换成单if分支相加。 也可以if分支,也可以lookup函数。   1、CHOICE: +2 if band A; +1 if band B or DSE ICT &gt;= 4; 0 otherwise (i.e. band C)在excel中如何实现(N列是band、p列是DSE_ICT)? 把多if分...

weixin_33774883的博客 3464

Shell多分支if语句

一 语法 if [ 条件判断式 ] then 当条件判断式1成立时,执行程序1 elif[ 条件判断式2 ] then 当条件判断式2成立时,执行程序2 省略更多条件 else 当所有条件都不成立时,最后执行程序 fi   二 实现计算器 #!/bin/bash read -t 30 -p "please input num1:" num1 read -t 30 -p

实践求真知 4640

switch 多分支语句,及其流程图,和if的对比和运行机制

switch : 在编程中常见的问题就是检测一个变量是否符合某个条件,如果条件不符合,再用另一个值来检测,以此类推.当然也可以用if语句来完成也可以,如输入月份判断一年的季节,代码如下:public static void main(String[] args) { System.out.println("请输入一个月份:"); Scanner scanner = new Scan...

tp15868352616的博客 4万+

java case when多分支判断_Shell case语句(多分支条件判断)

case 语句和 if...elif...else 语句一样都是多分支条件语句,不过和多分支 if 条件语句不同的是,case 语句只能判断一种条件关系,而 if 语句可以判断多种条件关系。case 语句的语法如下:case $变量名 in"值 1");;如果变量的值等于值1,则执行程序1,值2")如果变量的值等于值2,则执行程序2…省略其他分支…*)如果变量的值都不是以上的值,则执行此程序;;e...

weixin_34917038的博客 1031

人工智能学习之旅(4)--Python学习(四)之Python的条件分支和循环

Python学习(四)之Python的条件分支和循环 Python中的数据类型 整型:在Python2中还区分整型和长整型,但在Python3中已经不区分了。 浮点型:Python中区分整型和浮点型的方式就是看数据是否包含小数点。 e记法(科学计数法) 布尔类型:True代表真,值为1,False代表假,值为0。但是实际应用不会拿他们的值来做操作。 类型转换: Python中的比较操作符 ...

qq_36836154的博客 295

DEDE模板中如何使用if进行多分支判断

我们在用dede做模板的时候,经常会遇到需要根据某个条件判断来分别显示不同的内容的情况,也就是dede模板中的多分支判断。如何在dede中使用if完成多分支条件判断和处理,网上没有一个统一的标准,而且很多帖子都是相互转发的,也不能真正解决用户的问题,所以这里给大家介绍了一个非常强大的标签 field:array, 它基本上解决了我们遇到的很多问题,给大家的网站创建带来了极大的便利。

walkingmanc的专栏 1万+

多条件分支的条件判断

如 if() {} else if () {} 的()条件里,使用 && ,||进行多条件并列判断时,可能造成逻辑上的问题。 上面的情况最好使用嵌套的一次一条件的判断方式。 转载于:https://www.cnblogs.com/YOUEN/archive/2012/12/03/2800188.html...

weixin_30318645的博客 806

js中的if 语句、多分支语句、嵌套语句的用法

if语句的分类: 1、if 2、if  else 代码示例: var score=65; var daily=70; if (score>60 &&daily>60){ alert("顺利毕业") }else{ alert("很抱歉,没有顺利毕业!") } 3、if  else     if   else   el

xuehyunyu的博客 2万+

3、分支结构流程图

绘图工具:Microsoft Visio 2013 1. 单分支结构流程图——大值 问题:画流程图,输入两个整数a和b,输出其中的大值。 (提示:当a&lt;b时,交换a和b,最后输出的a一定是其中的大值。流程图中可以直接给出交换a和b的具体算法,也可以用文字“交换a和b”说明。流程图是面向人的设计语言,人能看明白即可。) 2. 双分支结构流程图——大值 问题:画流程图,输入两个整数a和b,输出...

AntaresYF的博客 5万+
上一篇: 【转载】编程解不开僵局?「条件判断」来帮忙 | 亲子课堂 第 6 课
下一篇: 【转载】编程里最有用的偷懒工具「函数」 | 亲子课堂 第 8 课
「已注销」
博客等级 码龄7年 13粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值