单元二 · 算法结构与描述

第8课 算法验证与实现

任务场景
任务场景:算法验证与实现

一、学习目标

  • 利用图形化编程软件,初步尝试编写简单的 Python 程序,对算法进行验证与实现。
  • 知道变量的含义,了解 Python 中 input()、int()、float() 和 print() 等函数的用法。

二、情境导入

通过编程,可以更加灵活、高效地利用算法解决各种问题,并且在计算机的帮助下,探索更多有趣的问题。

想一想:你是不是也很想编写程序指挥计算机执行任务呢?你想让计算机做哪些事情?我们一起来探索吧!

三、核心讲解

本课学习路径:

1编程实现买水果计算价格
2编程验证公园购票的算法

1.编程实现买水果计算价格

小智家里要来客人,他陪妈妈去超市买水果,每千克苹果 8.5 元,每千克香蕉 12.6 元。请编写一个程序,帮助小智妈妈计算买水果需要的总金额。

了解算法并不一定需要编程,可以通过日常生活中的问题分解和步骤规划来认识。然而,要让算法真正发挥效力,通常需要借助程序来实现。编程可以把我们的想法和思路转化为计算机能够「认识」的指令,并指导计算机按照设计的算法来执行任务。

想一想:

  1. 我们设计的算法,计算机认识吗?
  2. 怎样让计算机认识呢?
  3. 如何编写程序,把这些步骤写成计算机能认识的形式?

分析「买水果计算价格」问题:

  • 输入:苹果和香蕉的质量。
  • 处理:计算每种水果总价和要支付的总金额。
  • 输出:总金额。

买水果:先输入质量,再按单价计算总金额并输出。本课新语法是 input / int / float(见下方对照表);四则运算与 print 已在第 5 课出现。

注意:input 得到的是文字,做乘法前要用 float(...) 或把「获取输入」选成「小数」。

2.编程验证公园购票的算法

回顾第 6 课所学知识。第 1 步:分析公园购票的算法基本流程,找出其中的输入、处理和输出。

想一想:

  1. 哪个步骤是获取购票人的身高?
  2. 判断购票的条件是什么?
  3. 算法流程中的输出是什么?

第 2 步:参考流程图,编写程序验证购票算法。分支用第 6 课的 if/else;身高用 int(input(...)) 输入。程序里 # 开头是注释,不执行。

流程图:公园购票算法(验证用)

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

练习巩固:华氏转摄氏时,务必用 float(input(...)),不要只用文字型 input。

本课新语法与图形块

本课首次出现:键盘输入与类型转换。购票算法见流程图;分支 if/else 已在第 6 课讲过。

语法图形块说明
a = input('…')
获取输入文字
得到的是文字(字符串)
int(input('…'))
获取输入整数
输入后转成整数
float(input('…'))
获取输入小数
输入后转成小数,才能做乘法

弄清以上要点后,再进入下方 Python Online,动手验证买水果、公园购票与温度转换程序。载入后对照本课新积木与流程图验证。

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

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

五年级 · 买水果:用 float(input) 输入质量,单价苹果 8.5、香蕉 12.6。运行后按提示输入。

五、课堂总结

  • 编程可以把我们的思想和创造力转化为实际的程序指令,让计算机按照指令来执行,从而完成指定的任务。
  • 编程通常要依据相应算法来进行,程序用于算法的验证与实现。
  • 编写的程序通常需要通过「运行—修改—再运行」来反复调试,从而达成算法设计的要求。

六、拓展提升

  • 小智陪妈妈去超市买水果时,遇到超市有活动优惠,购买的单种水果超过 4 千克就可以打 9 折。请修改前面编写的程序,重新计算买水果需要支付的总金额。
  • 尝试用程序验证与实现第 6 课中的以下算法:输入两个不同的自然数,比较判断后输出其中较小的自然数。

测评

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

  1. 用 input() 输入数字后不能直接做乘法,主要原因是什么?

  2. 在 Python 中,print() 函数的作用是什么?

  3. 判断:编写的程序通常需要通过「运行—修改—再运行」来反复调试。

本节小结

程序是算法在计算机上的「落地」:用 input 获取数据、用变量保存、用公式计算、用 print 输出。写好算法还不够,还要会调试,让计算机真正按你的意图运行。