编程教育公益活动系列之一
编程教学建议第一辑“教材分层次梳理”
重要提示:全文请从阅读原文下载使用。本文是声明原创、提供信息。
说 明
本材料仅供教材分析、教学参考使用,具体教学要求和教学评价请按当地教研部门相关规定实施。
本材料可用于教学研究等公益活动,请勿进行商业活动,在百度文库等网络传播敬请免费、无扣点数、金币等有条件提供,蓝调百香果保留版权。
编写人员:孙波 王爱胜 程强 张渤 丛兴滋 杨伟 苏澎 段金英 王洪波姚晓燕等
有志参加编程指导公益活动的请邮件:347679968@qq.com
目前正在开展的活动:针对初学Python课程,设计有趣、实用的小程序,以学习算法为主,以编程技巧为辅。
泰山出版社2018出版初中信息技术新教材,其中第1册、第2册、第6册涉及算法与程序设计、人工智能的内容,根据国家政策及一线实际情况作出编写说明,并进行教学建议如下。
第一册 编程教学内容说明1.设计意图
在第2单元引导学生“探究如何用计算机解决问题”,提升计算思维的学科核心素养;第二册增强算法与程序设计,加大高级算法启蒙教育内容,Python算法与程序设计为国家核心竞争力做好人才教育。
2.教学要求
能够利用基本程序代码进行数据的输入、计算、选择和自动化加工,理解用计算机程序解决问题的基本过程,学会设计基本的顺序、选择、循环结构程序分析问题。
能够利用输入、输出、赋值语句设计程序,掌握不同类型的数据与变量的应用方法,学会利用顺序结构程序进行基本的数据输入、计算与输出。
能够利用if、else等基础的选择语句和and、or等逻辑关系设计程序,掌握不同条件、情况下的数值处理方式,学会利用选择结构程序进行基本的情况判断与逻辑推理。
能够利用for、while等基础的循环语句用循环嵌套设计程序,体验自动化数据处理的原理,学会利用循环结构程序进行基本的数据加工与统计。
能够在程序设计中,体验计算思维,提高逻辑推理能力,关心时代发展,培育科学、人文素养。
3.教学建议
微项目1:探究用程序加工数据的过程
编写数据加工的程序
通过体验输入、处理、输出数据,认识程序的作用。探究数据加工基本过程用到哪些程序语句。
【程序范例】“利息计算”
x=int)
y=x*1.5/100*1
【技术体验】
①Python的启动、编辑、运行。
②赋值语句 如:x=123 y=x*2 z=”你好”
③输入 如:c=input
④取整 如:int int
⑤输出 如:print
【知识了解】
变量,*,/,赋值格式:变量=表达式 。
#!/usr/bin/python3是夸平台应用,在Windows下编程可以省略。
【学习指导】
①可以把计算机比作数据加工车间,原材料通过input这样的输入函数作为数据传送带,把数据送到车间中去。
②内存中存储数据的器具有很多种,变量就像是一个有名称的容器,用字母表示;如A、C2等。
③数据在CPU的运算器中完成计算后,可以把表达式计算的值再赋给其他变量。
变量在内存中的示意图
【程序实验】
可修改题意,进行练习,目的是体验输入数据、计算数据、输出数据,尤其是能够简单地修改运算表达式。
通过两种难度的程序实验,在体验本节技术的基础上,深入体验数据类型的不同。
★基础难度题:“求三个人的平均年龄”
a1=int)
a2=int)
a3=int)
p=int/3)
★★拓展难度题:“求三科成绩的平均值”
a1=float)
a2=float)
a3=float)
p=float/3)
探究数据的存储方式
【学习目标】尝试在变量、列表中存储数据,了解数据的存储方法。思考变量的类型与用途有何关联。
【学习范例】“优良品质列表”。
m=["爱国","坚毅","乐观"]
m.append
m.append
【技术体验】体验列表功的赋值、追加、显示功能。
【知识了解】列表用[ ]存储,赋值、显示都可以用列表名称或元素名称、m表示。
【学习指导】
①单个的变量就像孤独的房间,而一系列的房间可以用列表表示。
列表是一系列的存储空间
②m.append就像是给m在后面接着增加一个房间,并放上东西。“追加”这个单词不用背诵,了解就行。
③M、M这样的名称是指相应房间的值。
【程序实验】
针对有分类特点的数据进行练习,目的是体验列表的赋值、追加、输入,尤其是能够简单应用下标如m显示单个的列表元素,并注意第1个元素是下标是0。
★基础难度题:“我喜欢的植物”“中国著名的沿海城市”等。
m=["大连","天津","青岛"]
m.append
m.append
★★拓展难度题:用多种类型数据列表存储一个人的信息。
n=["姓名","李杨","年龄",15,"性别","男"]
科学探究:数据类型及其运算
主要用于理解数据有不同的类型,能够区分数字、字符串即可。
数据类型转换,是探究数据运算可如果类型不一致,有的可以通过转换类型来处理,不要求掌握转换规则。
常用的三种数据类型:整数、浮点数、字符串
n = 10 #整型变量
t = 10.0 #浮点型变量
m = "Do you know"#字符串变量
print+"T")
x=5 + 4 #加法
y= 4.3 - 2 #减法
z= 3 * 7 #乘法
w= 2 / 4 #除法,得到一个浮点数
v= 2 // 4 #整除,得到一个整数
m= 17 % 3 #取余
n= 2 ** 5 #乘方
str = "My home is in Shandong"
print #输出字符串
print #输出第一个到倒数第九个的所有字符
print #输出字符串第一个字符
print #输出从第四个开始到第七个的字符
注意:在以上程序中,可以修改数据进行观察结果。运算掌握程度视学生学习情况而定。重在实验观察,不重记忆与理解。
技术探索:尝试用文件存储数据
通过探索,了解数据可以存储在文件中,实现长期保存。能够修改程序中的文件名,完成存储,观察存储结果即可,不要求掌握语法规则。
文件写入程序,重在体验,可以修改文件名称、内容,进行实验。其中, n是换行的意思。
fw = open #打开一个文件
fw.write #向文件写入字符串
fw.write #向文件写入字符并换行
fw.write
m = input #从键盘输入一个字符串
fw.write
fw.close#关闭打开的文件
在以上程序中,关闭文件是为了数据安全,可适当说明。
另外,对文件读取,知道能够读取即可,也不要求体验程序。
fw = open
str1 = fw.read
str2 = fw.readline
fw.close
注意:
在以上程序中,read是读5个字符。可改变数值观察结果的变化。
readline是读一行字符。
学习评测:按2种不同层次水平评测。
★一星难度
1.以下是属于变量的是
A 12.3 B x C“变量” D 1+2
2.以下赋值正确的是
A x=1、2、3
B y=123+“456”
C x=1,2,3
D y=1+2+3
3.以下x值等于5的是
A x=’10/2’
B x=10/2
C x=int
D x=’6-1’
4. 以下程序运行后,显示的结果是
a1=int)
a2=int)
p=int
假如输入5和6,结果是:______________________
5.以下程序运行后,显示的结果是_______________
m=["书法","绘画","体育"]
m.append
m.append
参考答案:1.B 2.D 3.C 4.30 5.书法
★★二星难度
1.以下是属于变量的是
Ax+y B xyC x=“变量”D x/y
2.以下赋值不正确的是
Ax=a1+a2+a3
By=“123”+“456”
Cx=123+456
Dy=123+“456”
3.以下x值等于3的是
A x=”10/3”
B x=10/3
C x=int
D x=”6-3”
4. 以下程序运行后,显示的结果是
a1=int)
a2=int)
p=int
假如输入15和5,结果是:______________________
5.以下程序运行后,显示的结果是_______________
m=["书法","绘画","体育"]
m.append
m.append
参考答案:1.B 2.D 3.C 4.78 5.与体能有关的项目是:体育
微项目2:用选择结构程序做出判断
编写数据加工的程序
通过对情况做出判断,掌握选择结构程序的判断功能设计。思考条件表达式的作用是什么。
【程序范例】“密码验证程序”。
p=input
ifp=="x1y23z":
else:
【技术体验】
①体验if的作用
a=3
b=2
if a>b:
else:
②体验布尔值
a=3
b=2
【知识了解】
布尔值:真是True、假是 False。
“==”:判断是否等于
【学习指导】
①可举QQ密码等口令判断进行讲述。
②也可以使用简单的判断两数的大小程序,ifa>b : else:
③对关系式、布尔值的概念不作要求,能够结合实例了解“条件成立与否”即可。特别注意的是要规范缩进,让每一段程序块清晰。
【程序实验】请换成自己的谜语,让同学猜。
p=input
ifp=="明":
else:
根据多个条件逐步推断
通过运用多个条件逐步推断出结论,了解选择结构的嵌套。思考选择结构嵌套程序中的多次判断有何联系。
【程序范例1】判断值大、小、等于
a=21/32+21*32
b=32/21+23*31
if a>b:
else:
if a print else: print 【程序范例2】比较表达式的值、狗狗年龄问题。 age =int) if age <= 0: print elif age == 1: print elif age == 2: print else: 【技术体验】 多重判断 c = input) if c==“是”: c2 = input) if c2==“是”: print else: print else: print 多重选择 c = input if c==”篮球”: print elif c==”足球”: print elif c==”排球”: print else: print 【知识了解】 elif是排除前面判断后继续判断,多个构成选择功能。 【学习指导】 ①判断的嵌套,可以用多层小盒子里的问题来比喻:符合条件继续判断下一个盒子里的问题。 ②判断的选择,可以用排列的书签选择来类比。 足 球 书 签