1、-1-/17第四章 程序设计基础第四章 程序设计基础项目学习设计项目学习设计一、项目简介一、项目简介项目主题项目主题设计购买纪念品的最佳方案项目背景项目背景网上购物已经成为人们生活中的一部分。通过网购,人们不仅可以方便地在各家电商中获取商品的相关信息,而且可以对商品进行比质比价,从而以优惠的价格购得心仪的商品。为了购得既经济适用又美观大方的商品,人们就要根据需求设计好购买方案,方案中会涉及到多种商品的排列组合,编写程序来找出哪种方案最佳比用人工寻找效率更高。在运用计算机解决实际问题的过程中,如何把求解问题的算法告知计算机,就需要有一种能够实现人机交互的语言,而这种语言就是计算机程序设计语言。对
2、应教材对应教材广东教育出版社普通高中教科书信息技术必修 1数据与计算第四章课时安排课时安排8 课时二、课程标准及目标分析二、课程标准及目标分析(一)课程标准及教材分析(一)课程标准及教材分析1.本章对应课标的内容要求本章对应课标的内容要求掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。通过解决实际问题,体验程序设计的基本流程,掌握程序调试与运行的方法。2.本章对应的学业要求本章对应的学业要求A-1:能够描述数据与信息的基本特征。(信息意识、数字化学习与创新)A-4:能够根据需要选用合适的数字化工具开展学习。(信息意识、数字化学习与创新)A-6:能够利用软件工具或平台对数据进行整理
3、、组织、计算与呈现。(信息社会责任、计算思维)A-7:能通过技术方法对数据进行保护。(信息社会责任、计算思维)A-8:在数据分析的基础上,完成分析报告。(信息社会责任、计算思维)A-10:掌握一种程序设计语言的基本知识。(计算思维)A-11:利用程序设计语言实现简单算法,解决实际问题。(计算思维)-2-/173.本章的地位和作用本章的地位和作用本章是教科书数据与计算的第四章,将带学生学习“程序基础”的教学内容,也是学习第五章、选择性必修模块人工智能初步的基础知识与技能准备。本章以培养信息素养为目标,以知识技能为载体,以项目学习活动为途径,开展自主、协作、探究学习,让学生掌握 Python 程序
4、设计语言的基本知识,程序的顺序结构、选择结构、循环结构以及在解决实际问题中的应用。本章通过“设计购买纪念品的最佳方案”项目范例,让学生使用程序设计语言实现简单算法,体验程序设计的基本流程,掌握程序调试与运行的方法,从而提升学生的信息素养。(二)学科核心素养(二)学科核心素养信息意识信息意识:根据不同受众的特征,能选择恰当的方式进行有效交流;在日常生活中,根据实际解决问题的需要,恰当选择数字化工具,具备信息安全意识;主动关注信息技术工具发展中的新动向和新趋势,有意识地使用新技术处理信息。计算思维计算思维:能提取问题的基本特征,进行抽象处理,并用形式化的方法表述问题;运用基本算法设计解决问题的方案
5、,能使用编程语言或其他数字化工具实现这一方案。数字化学习与创新数字化学习与创新:针对特定的学习任务,运用一定的数字化学习策略管理学习过程与资源,完成任务,创作作品。信息社会责任信息社会责任:在信息活动中,具有信息安全意识,尊重和保护个人及他人的隐私;正确认识现实社会身份、虚拟社会身份之间的关系,合理使用虚拟社会身份开展信息活动。(三)目标分析(三)目标分析1.项目目标项目目标本章通过“设计购买纪念品的最佳方案”项目,组织学生进行自主、协作、探究学习,让学生在理解了 Python 程序设计语言基础知识的基础上,掌握三种程序控制结构,学会使用程序设计语言实现简单算法,体验程序设计的基本流程,掌握程
6、序调试与运行的方法,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进本章对应课标的学科核心素养达成,完成项目学习目标。2.学业目标学业目标(1)能够理解 Python 语言常量和变量的数学意义;(2)能够熟悉 Python 语言常见的数据类型;(3)能够正确表示程序中的各种“量”;(4)能够理解运算符与表达式的含义和用法;(5)能够运用 Python 的运算符处理数据计算;(6)能够知道不同的 Python 函数的用法;(7)能够使用不同 Python 函数处理运算数据和运算过程;(8)能够掌握 input()函数和 print()函数的基本用法;(9)能够
7、掌握程序的顺序结构设计的基本流程;(10)能够运用顺序结构描述问题的求解过程;-3-/17(11)能够掌握程序的选择结构设计的基本流程;(12)能够掌握 Python 程序设计语言的选择结构的单分支 if 语句、双分支 if 语句、if 语句的嵌套以及 ifelifelse 语句的一般格式及使用方法;(13)能够运用选择结构描述问题的求解过程;(14)能够掌握程序的循环结构设计的基本流程;(15)能够掌握 Python 程序设计语言的循环结构的 for 循 环、while 循环、循环嵌套、循环控制等的一般格式及使用方法;(16)能够运用循环结构描述问题的求解过程。重点:重点:(1)input(
8、)、print()函数和数据类型转换函数的基本用法;(2)程序的顺序结构设计的基本流程;(3)程序的选择结构设计的基本流程;(4)程序的循环结构设计的基本流程;(5)Python 程序设计语言的选择结构的单分支 if 语句、双分支 if 语句、if 语句的嵌套以及 ifelifelse 语句的一般格式及使用方法;(6)Python 程序设计语言的循环结构的 for 循环、while 循环、循环嵌套、循环控制等的一般格式及使用方法。难点:难点:(1)运用顺序结构描述问题的求解过程;(2)运用选择结构描述问题的求解过程;(3)运用循环结构描述问题的求解过程。三、学情分析三、学情分析学生在第三章中已
9、经体验了计算机解决问题的过程,能够理解和概述算法的概念与特征,学会了运用恰当的描述方法和控制结构表示简单的算法,懂得描述程序设计语言产生与发展的过程,了解不同种类程序设计语言的特点,掌握 Python 的基本操作。四、教学方法和策略四、教学方法和策略创设程序设计的活动情境,组织学生在解决问题的过程中探究顺序结构、选择结构和循环结构的特点,通过小组学习分析问题,设计解决问题的算法,编写代码实现算法,在“验证修正”的过程中发展学生的计算思维。五、资源列表五、资源列表资源名称资源名称清单及描述清单及描述形式(类型)形式(类型)来源来源课件第四章 程序设计基础(课件)演示文稿教师制作微课本章课程介绍本
10、章项目范例程序设计语言的基础知识微课视频教师制作-4-/17认识 Python Python 顺序结构Python 选择结构Python 循环结构-for 循环Python 循环结构-while 循环循环嵌套和控制资料程序代码文本教师制作软件工具Python3.*软件互联网六、学习活动流程六、学习活动流程七、学习活动设计七、学习活动设计范例学习范例学习项目主题项目主题设计购买纪念品的最佳方案项目背景项目背景运用计算机解决实际问题的过程中,如编程找出购买物品(服务)的最佳方案,就需要有一种能够实现人机交互的语言,而这种语言就是计算机程序设计语言。项目目标 项目目标 通过项目的完成,了解 Pyth
11、on 程序设计语言的基础知识,掌握程序的顺序结构、选择结构和循环结构三种控制结构,学会使用程序设计语言实现简单算法,体验程序设计的基本流程,掌握程序调试与运行的方法,从而实现项目学习的目标。-5-/17工具和方法工具和方法利用思维导图工具和“头脑风暴”的方法组建团队、明确任务;采用 Python 语言和程序设计结构控制方法,实施探究。实施过程实施过程(1)明确项目问题;(2)规划设计:制订项目学习的学习规划;(3)探究活动,通过探究活动了解 Python 程序设计语言的基础知识、运用顺序结构设计最佳方案、运用选择结构设计最佳方案、运用循环结构设计最佳方案、综合运用三种结构设计最佳方案;(4)作
12、品制作:设计购买纪念品的最佳方案;(5)成果交流;(6)活动评价。成果成果购买纪念品最佳方案的可视化报告项目选题项目选题教师活动教师活动提供更多的选题,并参与到小组的选题讨论中。学生活动学生活动根据教材选题、教师提供的附加选题或自拟,小组头脑风暴后确定项目选题,以小组为单位,填写项目学习活动记录表“项目选题”栏目。项目规划项目规划教师活动教师活动强调项目目标及学习目标,引导学生分析项目问题,指导小组完成项目规划,组织开展方案交流。学生活动学生活动小组依照项目范例,结合本组选题,制订本组项目规划方案,填写项目学习活动记录表“项目规划”栏目。探究活动探究活动项目实施项目实施活动 1:通过学习和交流
13、,结合本组选题,分析并确定小组项目程序设计时需要的 Python 的数据类型、运算符、表达式与函数,了解 Python程序设计语言的基础知识。活动 1:通过学习和交流,结合本组选题,分析并确定小组项目程序设计时需要的 Python 的数据类型、运算符、表达式与函数,了解 Python程序设计语言的基础知识。教师活动教师活动以项目范例为例,引导学生对项目问题进行抽象与建模,对项目程序设计中的数据类型及需要的运算功能进行分析并确定。学生活动学生活动通过学习,对小组项目问题进行抽象与建模,小组结合本组选题,-6-/17分析和确定本组项目程序设计的数据类型及运算法则,填写项目学习活动记录表“探究活动
14、项目实施”栏目中的“活动 1”的内容。活动 2:通过实践体验,初步认识 Python 程序,体验 Python 开发环境。活动 2:通过实践体验,初步认识 Python 程序,体验 Python 开发环境。教师活动教师活动提供项目范例中的 Python 程序代码,提供有关 Python 开发环境的基本操作指引(或微课),指导学生对程序进行基本的开发操作:打开、新建、保存、调试运行等,为本项目的程序设计做好准备。学生活动学生活动根据 Python 的操作指引,体验打开、调试运行 Python 程序的过程。探究活动探究活动项目实施项目实施活动 3:通过学习、交流、实践,结合小组选题,分析问题并确定
15、小组项目程序设计时输入、输出数据的算法,编写代码实现运用顺序结构设计最佳方案。活动 3:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时输入、输出数据的算法,编写代码实现运用顺序结构设计最佳方案。教师活动教师活动引导学生对项目问题进行简化,设计出假设购买物品的数量是通过用户输入,则计算机如何实现计算并输出总价的算法。提供学习资源,并指导学生运用顺序结构的相关程序语句实现算法。学生活动学生活动通过学习,对项目问题进行简化和分析并设计出相应的算法,借助学习资源,小组结合本组选题,编写出运用顺序结构设计最佳方案的程序代码并调试运行及纠错,同时填写项目学习活动记录表“探究活动 项目
16、实施”栏目中的“活动 3”的内容。活动 4:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时判断和选择的算法,编写代码实现运用选择结构设计最佳方案。活动 4:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时判断和选择的算法,编写代码实现运用选择结构设计最佳方案。教师活动教师活动在解决实际问题的过程中,常常需要对事物进行判断和选择,购买物品的数量达到一定时,商家往往会有相应的优惠,计算机是如何实现选择和判断的?提供学习资源,引导学生对项目问题进行优化,指导学生运用选择结构的相关程序语句实现算法。学生活动学生活动通过学习,对项目问题进行优化和分析并设计出相应
17、的算法,借助学习资源,小组结合本组选题,编写出运用选择结构设计最佳方案的程序代码并调试运行及纠错,同时填写项目学习活动记录表“探究活动 项目实施”栏目中的“活动 4”的内容。活动 5:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时循环的算法,编写代码实现运用循环结构设计最佳方案。活动 5:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时循环的算法,编写代码实现运用循环结构设计最佳方案。-7-/17教师活动教师活动计算机解决问题的核心优势之一就是自动化,在解决实际问题的过程中,购买物品的方案有很多,如何是最佳?如限定的金额内实现购买物品数量最多,或数量相
18、同情况下余额最小为最佳等。我们可以运用计算机循环结构实现方案的枚举,从而能自动化找出最佳方案。提供学习资源,引导学生对项目问题的解决进行自动化算法的设计,指导学生运用循环结构的相关程序语句实现算法。学生活动学生活动通过学习,对项目问题的解决进行自动化设计并设计出相应的算法,借助学习资源,小组结合本组选题,编写出运用循环结构设计最佳方案的程序代码并调试运行及纠错,同时填写项目学习活动记录表“探究活动 项目实施”栏目中的“活动 5”的内容。项目实施项目实施各小组参照项目范例的样式,运用数字化学习工具,如腾讯文档、演示文稿等,归纳所学知识,梳理探究活动的成果,撰写相应的项目成果报告。成果交流成果交流
19、各小组在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,利用“作品评价量规”及教科书附录 2 的“项目活动评价表”,开展项目学习活动评价。八、学习成果八、学习成果“设计购买物品的最佳方案”可视化报告九、评价方案九、评价方案(一)评价时间线(一)评价时间线-8-/17(二)评价工具(二)评价工具评价方法/工具评价方法/工具评价的过程和目标评价的过程和目标项目范例报告用于整个活动,主要作用是为学生项目实施和作品制作提供示范和引领。(见附件 1)项目学习活动记录表用于整个学习活动,主要作用是指导学生开展项目学习活动,明
20、确项目学习内容,记录学习过程及阶段性成果。(见附件 2)作品评价量规使用量规项目来帮助学生创作高品质的作品,确保达到项目预期。同时用量规为同伴的作品提供反馈。教师使用量规来评价。(见附件 3)项目活动评价表对整个项目学习过程中各环节,学科核心素养达成的情况进行评价。(见教科书附录 2)十、项目实施说明十、项目实施说明(一)关于课时分配(一)关于课时分配建议课时分配如下:第 1 课时:范例展示、项目选题与项目规划第 2 课时:探究活动、项目实施活动 1、活动 2第 3 课时:探究活动、项目实施活动 3第 4 课时:探究活动、项目实施活动 4第 5、6 课时:探究活动、项目实施活动 5第 7 课时
21、:项目实施第 8 课时:成果交流、活动评价(二)关于项目范例(二)关于项目范例本章教师通过“设计购买纪念品的最佳方案”项目范例,引导学生学习“程序设计基础”。(三)关于项目选题(三)关于项目选题项目范例报告项目学习活动记录表项目范例报告项目学习活动记录表项目活动评价表作品评价量规项目选题项目规划活动评价项目活动评价表作品评价量规成果交流项目实施项目范例报告项目学习活动记录表项目范例报告项目学习活动记录表探究活动-9-/17围绕本章项目学习活动的大主题“设计购买纪念品的最佳方案”,根据生活中常见的购买物品最佳方案,细化项目学习活动的主题,提供给学生开展学习。1.设计购买电信服务的最佳方案;2.设
22、计购买学习用品的最佳方案;3.设计购买班服的最佳方案;4自拟(四)关于探究活动(四)关于探究活动“探究活动”对应项目范例的主题,串联知识点,学生在学习范例的同时自选项目主题,结合范例学习,完成自选主题的项目探究活动。“探究活动”的设计,使得学生在做项目的过程中学习知识、建构知识。教师提供记录表单和学习资源对学生的自主探究给予帮助和支持,以提高学生的学习效率和维持学生的学习兴趣。十一、附件十一、附件附件 1:项目范例可视化报告附件 1:项目范例可视化报告购买纪念品的最佳方案设计报告 一、引言 在运用计算机解决实际问题的过程中,如何把求解问题的算法告知计算机,就需要有一种能够实现人机交互的语言,而
23、这种语言就是计算机程序设计语言。二、设计目的 如今,网上购物已经成为人们生活中的一部分。通过网购,人们不仅可以方便地在各家电商中获取商品的相关信息,而且可以对商品进行比质比价,从而以优惠的价格购得心仪的商品。为了购得既经济适用又美观大方的商品,人们就要根据需求设计好购买方案。了解 Python 程序设计语言的基础知识,掌握程序的顺序结构、选择结构和循环结构三种控制结构,学会使用程序设计语言实现简单算法,体验程序设计的基本流程,掌握程序调试与运行的方法。三、需求分析和功能描述1.需求分析 对购买方案的需求分析包括:(1)了解实现算法的程序设计语言。(2)用程序控制结构设计购买纪念品的最佳方案。2
24、.功能描述 (1)了解 Python 程序设计语言的基础知识。(2)运用顺序结构设计最佳方案。(3)运用选择结构设计最佳方案。-10-/17(4)运用循环结构设计最佳方案。(5)综合运用三种结构设计最佳方案。四、设计工具和方法 利用思维导图工具和“头脑风暴”的方法组建团队、明确任务;采用 Python 语言和程序设计结构控制方法,实施探究。五、设计步骤与过程 1.明确问题,了解利用 Python 程序设计语言基础知识解决问题 求解购买纪念品的最佳方案问题,需要知道各商品的单价,才能设计出最佳方案。现在设总预算为 S,需要购买 10 个不同品种的商品数量为 x1,x2,x10,则求解问题的思路如
25、下:(1)上网搜索各个商品的价格。(2)求出各个商品的最低单价 a1,a2,a10。(3)令 E=S-(a1x1+a2x2+a10 x10),求 x1,x2,x10 的值(其中 x1,x2,x10 为正整数),使 E 最小(E0)。我们以 Python 语言为例,对问题进行求解,因此我们必须要先了解 Python 程序设计语言的基础知识。(1)Python 程序设计语言规定标识符由字母(AZ,az)、数字(09)、下划线组成,并且其第一个字符必须是字母或下划线,而不能是数字,如 s1,k,num,pai 等。在标识符中,字母大小写是有区别的,如“value”与“Value”是两个不同的标识符。
26、(2)Python 能够直接处理的常用数据类型有 Number(数值)、String(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)等。(3)在 Python 程序设计语言中对常量或变量进行运算或处理的符号称为运算符,参与运算的对象称为操作数。常用的运算符有算术运算符、逻辑运算符、关系运算符、赋值运算符、成员运算符等。由运算符、操作数连接而成的式子称为表达式。操作数可以是常量、变量、函数等。(4)函数是 Python 语言程序的基石,是组织好的、可重复使用的、用来实现单一或相关联功能的代码段。Python 默认带有一些常用的函数,如求绝对值函数、
27、求和函数、求最大值和最小值函数等。2.运用顺序结构设计最佳方案问题分解 1:项目小组成员在某网购站点上获取到如下信息:笔记本 1 的单价是 3 元,笔记本 2 的单价是 5 元,如果两种笔记本同时购买,价格可以打 8 折。计算一下,购买笔记本 1 和笔记本 2 各 n 本,可以优惠多少元?(以元为单位,四舍五入到小数点后两位)解决上述问题的方法有多种,其中一种方法步骤如下:(1)分析问题。先求出不使用优惠而单独购买所需费用,再求出使用优惠方案购买所需费用,两者相减即为节省的费用。(2)设计算法。根据上面的分析,设计算法如下:输入 n 的值;令 a=3n;令 b=5n;令 y=(a+b)(1-0
28、.8);输出结果 y;结束。其顺序结构流程图如右图所示。(3)编写程序。根据设计的算法,编写出该问题的程序代码如下:-11-/17 3.运用选择结构设计最佳方案问题分解 2:项目小组成员在某购物网站上了解到某种笔记本搞优惠活动,规定一次购买 6 本以上(含6 本)10 本以下(含 10 本)打 9 折,一次购买 11 本以上(包含 11 本)打 8 折。怎样根据笔记本的单价和购买数量编写程序计算总费用?解决上述问题的方法有多种,其中一种步骤如下:(1)分析问题。设项目小组购买笔记本的数量为 s 本,笔记本的单价为 p 元,折扣系数为 j,总费用为 t。根据题意,有:如果 s6,则 j=1.0;
29、如果 s6 而且 s10,则 j=0.9;如果 s11,则 j=0.8;又 t=spj,求出 t 的值即为所求的总费用。(2)设计算法。根据上面对问题的分析,解决问题的算法描述如下:输入 s,p 的值;如果 ss,则 s=x+y+z,r=1000-(1.8x+1.9y+2.1z),并记录此时 x,y,z 的值;如x+y+z=s,且 1000-(1.8x+1.9y+2.1z)s,则 s=x+y+z,r=1000-(1.8x+1.9y+2.1z),x1=x,y1=y,z1=z;若 x+y+z=s,且 1 0 0 0-(1.8x+1.9 y+2.1 z)r,则 r=1 0 0 0-(1.8x+1.9
30、y+2.1z),x1=x,y1=y,z1=z;转步骤;转步骤;转步骤;输出 x1,y1,z1,s 和 r 的值。(3)编写程序。根据上面设计的算法,编写出解决该问题的程序如下:-13-/17六、设计成果1.程序设计语言是实现算法、解决问题的有力工具在运用计算机程序求解问题时,需要有一种能够实现人机交流的语言,即程序设计语言。人们通过这种语言把求解的方法和步骤告诉计算机,计算机则按照程序的流程自动求解问题。而我们选择和利用的计算机程序设计语言Python 是一个强大的工具,语法友善,功能强大。2.基本结构是编写优质程序的基础用基本结构按一定规律组成并对算法进行描述,保证和提高算法的质量,是编写优
31、质程序的基础。基本结构包括顺序结构、选择结构和循环结构。(1)用顺序结构解决问题分解 1。输入 n 的值为 50,得到结果如下所示。(2)用选择结构解决问题分解 2。输入 s 的值为 100,p 的值为 3.2,得结果如下所示:-14-/17 (3)用循环结构解决问题分解 3,结果如下。七、结语本章通过“设计购买物品的最佳方案”项目,进行自主、协作、探究学习,让同学们了解 Python 程序设计语言的基础知识,掌握程序的顺序结构、选择结构和循环结构三种控制结构,学会使用程序设计语言实现简单算法,体验程序设计的基本流程,掌握程序调试与运行的方法,从而将知识建构、技能培养与思维发展融入运用数字化工
32、具解决问题和完成任务的过程中,促进信息技术学科核心素养达成,完成项目学习目标。附件 2:项目学习活动记录表附件 2:项目学习活动记录表第四章项目学习活动记录表第四章项目学习活动记录表班级班级 小组编号小组编号 项目主题项目主题项目目的项目目的小组成员及分工小组成员及分工组长:组长:项目选题项目选题问题列表问题列表编号编号问题内容问题内容方法方法项目规划项目规划-15-/17活动 1:通过学习和交流,结合本组选题,分析并确定小组项目程序设计时需要的 Python的数据类型、运算符、表达式与函数,了解 Python 程序设计语言的基础知识。活动 1:通过学习和交流,结合本组选题,分析并确定小组项目
33、程序设计时需要的 Python的数据类型、运算符、表达式与函数,了解 Python 程序设计语言的基础知识。知识技能知识技能常量常量变量变量数据类型数据类型运算符运算符表达式表达式函数函数小组项目成果小组项目成果活动 3:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时输入、输出数据的算法,编写代码实现运用顺序结构设计最佳方案。活动 3:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时输入、输出数据的算法,编写代码实现运用顺序结构设计最佳方案。知识技能知识技能输入输入输出输出顺序结构顺序结构小组项目成果小组项目成果分析问题:分析问题:设计算法:设计算法:
34、探究活动探究活动项目实施项目实施编写代码:编写代码:调试运行(截图):调试运行(截图):-16-/17活动 4:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时判断和选择的算法,编写代码实现运用选择结构设计最佳方案。活动 4:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时判断和选择的算法,编写代码实现运用选择结构设计最佳方案。知识技能知识技能ifififelseifelseifelifelseifelifelse分析问题:分析问题:设计算法:设计算法:编写代码:编写代码:调试运行(截图):调试运行(截图):活动 5:通过学习、交流、实践,结合小组选题,
35、分析问题并确定小组项目程序设计时循环的算法,编写代码实现运用循环结构设计最佳方案。活动 5:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时循环的算法,编写代码实现运用循环结构设计最佳方案。知识技能知识技能for 循环for 循环while 循环while 循环循环嵌套循环嵌套循环控制循环控制分析问题:分析问题:设计算法:设计算法:编写代码:编写代码:调试运行(截图):调试运行(截图):-17-/17附件 3:作品评价量规附件 3:作品评价量规得分得分项目及分值项目及分值评分标准与分值评分标准与分值自评自评互评互评准确把握项目学习的意义和目的。5选题切合实际、符合科学。5选
36、题有应用价值、创新价值。5作品选题20选题适宜解决、可行性高。5准确分析设计的目的。5准确分析方案的需求。5规划与分析15准确描述方案的功能。5合理使用数字化工具及资源。5工具与方法10围绕项目进行自主、协作学习。5交流与沟通的团队合作能力。5明确问题,了解利用 Python 程序设计语言基础知识解决问题。5运用顺序结构设计最佳方案10运用选择结构设计最佳方案10步骤与过程40运用循环结构设计最佳方案10根据目的,设计出切实可行的方案。5正确评估方案的科学性、实效性,能综合运用三种结构设计最佳方案,实现算法、解决问题。5成果与报告15报告内容完整,结构清晰,排版美观。5合计得分100粤教版普通
37、高中教科书信息技术必修1数据与计算数据与计算设计购买纪念品的最佳方案主题规划探究实施成果评价开展项目学习活动的全过程项目范例第四章程序设计基础项目范例设计购买纪念品的最佳方案第四章程序设计基础网络购物平台客户行为数据分析和可视化表达如今网上购物已经成为人们生活中的一部分。通过网购,人们不仅可以方便地在各家电商中获取商品的相关信息,而且可以对商品进行比质比价,从而以优惠的价格购得心仪的商品(图4-1)。为了购得即经济适用又美观大方的商品,人们就要根据需求设计好购买方案。第四章程序设计基础项目范例-设计购买纪念品的最佳方案根据项目主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如
38、图4-2所示。设计购买纪念品的最佳方案了解实现算法的程序设计语言运用程序控制结构设计购买纪念品的最佳方案规划进度安排工具与方法预期成果组建团队,明确任务查阅资料,探究实施形成作品,开展评价思维导图,“头脑风暴”Python程序设计结构控制方法可视化设计报告图4-2“设计购买纪念品的最佳方案”项目学习规划项目范例-设计购买纪念品的最佳方案探究活动学习内容知识技能了解实现算法的程序设计语言Python的常量和变量。了解程序设计语言的基础知识。Python的数据类型。Python的运算符与表达式。Python的函数。运用程序控制结构设计购买纪念品的最佳方案运用顺序结构设计最佳方案。掌握程序的顺序结构
39、、选择结构和循环结构。学会使用程序设计语言实现简单算法。体验程序设计的基本流程。掌握程序调试与运行的方法。运用选择结构设计最佳方案。运用循环结构设计最佳方案。综合运用三种结构设计最佳方案。表4-1“设计购买纪念品的最佳方案”项目学习探究活动第四章程序设计基础究根据项目学习规划的安排,通过调查,案例分析、文献阅读和网上资料搜索,开展“设计购买纪念品的最佳方案”项目探究活动,如课本表4-1所示。项目范例-设计购买纪念品的最佳方案第四章程序设计基础实施项目学习各项探究活动,进一步设计购买纪念品的最佳方案。在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结
40、构图,运用多媒体创作工具(如演示文稿,在线编辑工具等),综合加工与表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。可视化报告可在资源包查看,其目录截图如图4-3所示.图4-3“设计购买纪念品的最佳方案”可视化报告目录截图项目范例-设计购买纪念品的最佳方案第四章程序设计基础项目范例-设计购买纪念品的最佳方案第四章程序设计基础根据“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。同学从真实世界中选择自己感兴趣的主题开展项目学习活动做中学、学中创、创中乐第四章程序设计基础分组:以4-6人为一组,选择下面一个参考主题,或者自拟
41、一个感兴趣的主题,填写到表单内。n设计购买电信服务的最佳方案n设计购买学习用品的最佳方案n设计购买班服的最佳方案n自拟项目选题项目范例-设计购买纪念品的最佳方案第四章程序设计基础规划设计各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案,并完成下表的填写。项目主题项目目的小组成员及分工组长:组员1:组员2:组员3:问题列表编号问题内容方法项目范例-设计购买纪念品的最佳方案第四章程序设计基础方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。项目范例-设计购买纪念品的最佳方案探究活动1:通过学习和交流,结合本组选题,分析并确定小组项目程序设计
42、时需要的Python的数据类型、运算符、表达式与函数,了解Python程序设计语言的基础知识。探究活动第四章程序设计基础4.1程序设计语言的基础知识程序设计语言的基础知识Python程序设计基础知识微课第四章程序设计基础第四章程序设计基础4.1程序设计语言的基础知识1.常量常量是指在程序运行过程中其值始终不发生变化的量,通常是固定的数值或字符串。例如,45,-30.2001,Hello,等都是常量。2.变量变量是指在程序运行过程中其值可以发生变化的量。在程序设计语言中,变量可以用指定的名字来代表,即变量由变量的“标识符”(又称“名字”)和变量的“内容”(又称“值”)两部分组成。4.1.1Pyt
43、hon的常量和变量第四章程序设计基础4.1程序设计语言的基础知识4.1.2Python的数据类型Python能够直接处理的常用数据类型有Number(数值)、string(字符串)、List(列表)、Tuple(元组)、Sets(集合)、Dictionary(字典)等。(1)Python支持以下三种不同的数值类型:整型(int):通常被称为整型或整数,是不带小数的数。浮点型(float):浮点型由整数部分与小数部分组成,如2.5。复数(complex):复数由实数部分和虚数部分构成,可以用a+bj或者complex(a,b)表示,复数的实部a和虚部b都是浮点型。第四章程序设计基础4.1程序设计
44、语言的基础知识(2)String(字符串):字符串是以单引号或双引号括起来的文本,如abc、xyz等。字符串的索引从0开始,-1为从末尾开始的位置。(3)List(列表):列表是写在方括号“”之间、用逗号分隔开的元素列表。例如,list1=Good,Run,1997,2000和list2=1,2,3,4,5,6,7。列表的数据项不需要具有相同的类型。与字符串的索引一样,列表索引从0开始。4.1.2Python的数据类型第四章程序设计基础4.1程序设计语言的基础知识(4)Sets(集合):集合是一个无序不重复元素的序列。基本功能是进行成员关系测试和删除重复元素。可以使用大括号或者set()函数创
45、建集合。创建一个空集合必须用set()而不是,因为是用来创建一个空字典的。(5)Dictionary(字典):字典是无序的对象集合。与列表的区别在于:列表是有序的对象集合。字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用标识,它是一个无序的“键(key):值(value)”对集合。键必须使用不可变类型。在同一个字典中,键必须是唯一的。4.1.2Python的数据类型第四章程序设计基础4.1程序设计语言的基础知识在Python程序设计语言中对常量或变量进行运算或处理的符号称为运算符,参与运算的对象称为操作数。常用的运算符有算术运算符、逻辑运算符、关系运算符、赋值运算符、成员操作符等。由
46、运算符、操作数连接而成的式子称为表达式,操作数可以是常量、变量、函数等。4.1.3Python的运算符与表达式第四章程序设计基础4.1程序设计语言的基础知识1.算术运算符与算术表达式算术运算符包括:“+”、“-”、“*”、“/”、“%”、“*”和“/”,分别表示加法、减法、乘法、除法、求余运算、幂运算和整除。2.逻辑运算符与逻辑表达式逻辑运算符包括:and(与)、or(或)、not(非)共三个。4.1.3Python的运算符与表达式3.关系运算符与关系表达式判断数据大小关系的运算符称为关系运算符,关系运算符有:(大于)、=(大于等于)、(小于)、=(小于等于)、=(等于)、!=(不等于)。第四
47、章程序设计基础4.1程序设计语言的基础知识4.1.4Python的函数第四章程序设计基础项目实施 通过学习和交流,结合本组选题,分析并确定小组项目程序设计时需要的Python的数据类型、运算符、表达式与函数,了解Python程序设计语言的基础知识,完成右表填写。知识技能常量变量数据类型运算符表达式函数小组项目成果4.1程序设计语言的基础知识第四章程序设计基础探究活动探究活动2:通过实践体验,初步认识Python程序,体验Python开发环境。根据Python的操作指引,以教师提供的项目范例Python程序代码为例,体验打开、调试运行Python程序的过程。Python开发环境微课4.1程序设计
48、语言的基础知识运用顺序结构描述问题求解过程第四章程序设计基础第四章程序设计基础探究活动探究活动3:通过学习、交流、实践,结合小组选题,分析问题并确定小组项目程序设计时输入、输出数据的算法,编写代码实现运用顺序结构设计最佳方案。4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础分析问题1已知笔记本1的单价是3元、笔记本2的单价为5元2规则:如果两种笔记本同时购买,价格可以打8折3求:购买笔记本1和笔记本2各n本,可以优惠多少元?(四舍五入到小数点两位)4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础设计算法4.2运用顺序
49、结构描述问题求解过程的应用第四章程序设计基础顺序结构4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础顺序结构输入计算输出4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础如何实现输入?input()函数格式:input()作用:等待用户用键盘输入数据显示内容input(“请输入购买纪念品的数量:”)请输入购买纪念品的数量:a=input(“请输入购买纪念品的数量:”)从键盘输入一个字符串,赋值给a常见用法:4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础如何计算?数据类型转换格式:int(表达式)作用:把变量转换成整型常见用法:4.2运用顺序结构描述问题求解过程的应
50、用第四章程序设计基础如何计算?表达式与赋值语句4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础如何实现输出?print()函数格式:print(表达式)作用:输出表达式的值若b=10显示内容print(b)10print(“您购买的纪念品共消费:”)您购买的纪念品共消费:print(“您购买的纪念品共消费:”,b)您购买的纪念品共消费:10常见用法:4.2运用顺序结构描述问题求解过程的应用第四章程序设计基础如何实现输出?print()函数格式化输出%f格式化浮点数字,可指定小数点后的精度。%.2f是指保留小数点后两位。%y是指格式化的对象是y。4.2运用顺序结构描述问题求解过程的应用