单元二 · 算法结构与描述

第6课 判断选择用分支

任务场景
任务场景:判断选择用分支

一、学习目标

  • 通过购买公园门票的情境,认识算法的分支结构,初步学会用自然语言和流程图描述分支结构。
  • 通过分析公园购票的规则,能够确定分支结构的判断条件和执行路径,培养分析问题的能力。

二、情境导入

在日常生活中,我们乘坐高铁、公交车,观赏电影,听音乐会,进入游乐场、公园等,大都需要购票,不同场合通常会有不同的收费标准。通常,购票标准会对老人、儿童、学生、军人、残障人士等,给予相应的优惠。

想一想:购票的收费标准中,存在哪些规则或条件呢?

三、核心讲解

本课学习路径:

1描述公园购票的算法
2描述过马路的分支选择

1.描述公园购票的算法

周末,小智和妹妹参加在某公园举办的青少年科技主题活动,小智在售票窗口购买了门票。小智与售票员的对话如下。

小智

我要买两张票,我和我的妹妹。

售票员

你们的身高分别是多少?

小智

我身高 138 厘米,我妹妹身高 116 厘米。

售票员

你妹妹身高小于 120 厘米,可以购买半价票,票价是 5 元。你身高超过了 120 厘米,需要购买全价票,票价是 10 元。一共是 15 元。

想一想:

  1. 在购票过程中要经历哪些步骤?
  2. 售票员采用的售票规则是什么?

购票过程可以概括为:

  1. 告诉售票员身高信息(输入)。
  2. 售票员依据购票规则和身高,判断购票类型和价格(处理)。
  3. 售票员告知购票人购票类型和价格(输出)。

输入和输出是购票环节的重要组成部分。当我们购票时,需要与售票员交流,告诉售票员身高数据(输入),售票员进行判断和选择(处理),然后说出购票类型和价格(输出)。

购票规则:身高小于 120 厘米的购票人可以购买半价票(5 元),身高大于等于 120 厘米的购票人需要购买全价票(10 元)。不同身高票价不同,售票规则与身高有关。

可以使用自然语言描述,即:如果……那么……,否则……

自然语言:如果身高小于 120 厘米,那么可以购买半价票,票价是 5 元;否则需要购买全价票,票价是 10 元。
分支结构表示:如果(身高小于 120 厘米):可以购买半价票,票价是 5 元;否则:需要购买全价票,票价是 10 元。

在算法描述中,用菱形框来表示判断条件,菱形框两侧带箭头的线表示依据条件判断的结果,决定程序的执行路径。

对照下方流程图:先输入身高,再判断「身高 < 120 厘米」——「是」走半价票 5 元,「否」走全价票 10 元,最后结束。

流程图描述:按身高判断票价

开始输入身高身高 < 120 厘米是否可以购买半价票,5 元需要购买全价票,10 元结束

在以上公园购票中,如果是学生团体(人数 ≥ 5 人),那么团体票在购票人原票价的基础上打 8 折。可按下图理解「人数」分支。

巩固练习:团体票是否打 8 折

开始输入人数人数 ≥ 5是否团体票打 8 折按原价购票结束

想一想:高铁、公交、电影院等购票场景里,各有哪些分支结构与判断条件?

2.描述过马路的分支选择

除了按照路口红绿灯的要求通过,还可以观察路口附近是否有过街天桥或地下通道。

  • 如果有过街天桥或地下通道,从条件框的「是」分支出发,走过街天桥或地下通道过马路。
  • 如果没有,则从条件框的「否」分支出发,仍然从红绿灯路口过马路。

算法描述:过马路的分支选择

到达路口观察路口附近有过街天桥或地下通道吗?是否从过街天桥或地下通道过马路从红绿灯路口过马路到达马路对面
知识延伸:在现实生活中,算法往往不是固定的步骤,有些步骤根据外部条件来确定是否要做。也就是说,要根据实际情况灵活地进行选择。条件判断使得算法的执行有了选择性,更加灵活方便。

想一想:假如要过马路去十字路口的斜对面,这时可以根据红绿灯的情况灵活选择。你会怎么做呢?其中存在怎样的判断与选择?

本课新语法与图形块

本课首次出现:分支判断。算法路径见上方流程图(菱形判断框)。

语法图形块说明
if 条件:
…
else:
…
如果否则
按条件选一条路
height < 120
比较
比较大小、是否相等
elif 条件:
否则如果
齿轮可增加 elif 分支

弄清以上要点后,再进入下方 Python Online,用 if/else 体验分支结构。

四、动手体验 · Python 3 Online 编程

本课含 2 个程序,请在下拉中切换后分别「载入」运行。

五年级 · 分支:按身高判断全票或半票。

五、课堂总结

  • 生活中解决很多问题时都体现了分支结构的选择性。
  • 分支结构实现不同的条件会选择不同的执行路径,从而能够灵活地解决问题。
  • 识别生活中的分支结构和其中的判断条件,能够帮助我们进行决策,从而更有效地解决问题。

六、拓展提升

  • 生活中还有哪些存在分支结构的情况?请说出这些分支结构中的判断条件和执行路径。
  • 判断两个自然数的大小时,我们往往通过观察就可以比较出来。而要让计算机完成这项工作,就要用到分支结构。下面给出一种参考流程:输入两个不同的自然数,比较后输出其中较小的数。

拓展参考:输出较小的自然数

开始输入自然数 a输入自然数 ba < b是否输出 a输出 b结束

测评

选出后点「检查」。答错会显示简短说明。

  1. 按本课公园购票规则,身高 116 厘米应购买哪种票?

  2. 分支结构的主要特点是什么?

  3. 判断:过马路时,根据是否有过街天桥选择不同路线,体现了分支结构。

本节小结

分支结构让算法能「看情况办事」:先判断条件,再选不同路径。公园购票按身高定票价、过马路选天桥或红绿灯,都是生活中的分支结构。