中小学教育资源及组卷应用平台 新世纪版信息技术八年级下册第十课传递信息教学设计 课题 传递信息 单元 第一单元 学科 信息技术 年级 八年级 学习目标 知识目标:进一步学习列表;进一步学习字典,熟悉前面学过的编程知识。技能目标:学习列表和字典;理解程序。情感目标:培养学生分析理解程序的能力。 重点 学习列表和字典 难点 理解程序 教学过程 教学环节 教师活动 学生活动 设计意图 导入新课 micro:bit可以发送和接收信息,这节课让我们用micro:bit来玩一个传递信息的游戏。一块 micro:bit负责发送信息,另一块micro:bit负责接收信息。 思考 激发学生学习兴趣并快速进入学习状态 讲授新课 一、发送信息【例题1】发送信息。micro:bit上没有键盘,如果用micro:bit发送信息,如何输入要发送的信息呢?想一想,你 有什么好办法?我们用下面的方法输入信息:在micro:bit上显示字母,用按钮B循环翻页,按下按钮A选 定并发送点阵屏幕上显示的字母。 用变量code存储字母(还可以加入标点符号等),code是一个列表,用n表示code中元素的序号。在点阵屏幕上显示code中的字符。输入符号 “#”表示信息发送完毕。用变量message存储所有已发送的信息。程序如下:仔细阅读上面的程序,你能看明白吗?怎样利用 micro:bit 的两个按钮发送信息呢?【例题 1】的办法是:用按钮B翻页显示字符,用按钮A发送点阵屏幕上显示的字符。怎样在屏幕上显示字符呢?用列表 code 存储需要显示的字符: code = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V',' W','X','Y','Z','#']用 n 表示列表中元素的序号,每按一下按钮 B,序号 n 就增加 1,屏幕上 显示 code[n] 这个字符。由于 n 会不断增加,但 n 的最大值不能超过“列表的长度 -1”,当 n 的值 达到列表的长度时,应该重新将 n 的值设置为 0。 if button_b.is_pressed(): if n < len(code) - 1: n = n + 1 else : n = 0上面这些功能可以用求余函数简化:if button_b.is_pressed(): n = n + 1 n=n%len(code)或者进一步简化为: if button_b.is_pressed(): n = (n + 1)%len(code)按下按钮 A 就将 code[n] 这个字符发送出去:radio.send(code[n])为了确定按下按钮 A 时屏幕上的字符是真的发送出去了,我们让屏幕上的 字符闪烁一下。具体的实现方法是:先清屏:display.clear()然后进入下一轮循环后再重新显示字符code[n] : display.show(code[n])于是,按下按钮 A,屏幕上的字符就闪烁了一下,如果没有闪烁,说明按下按钮 A 不成功,需要重新按。当所有的字符发送完毕,需要发送一个结束信号“#”,然后程序就退出 循环:if code[n] == '#': break最后屏幕上将显示所有已发送的字符。小博士 len()函数的使用方法。语法:len(str)其中变量str可以是字符串、列表、字典等类型。作用:返回字符串、列表、字典等的长度。二、接收信息【例题2】接收信息。由于发送端(【例题1】)是逐个字符发送信息因此在接收端也逐个显示接收到的字符(message_received),并用变量message将所有接收到的字符记录下来。 当接收到结束 符号“#”,在点阵屏幕上显示所有接收到的信息message。程序如图:在上面的程序中,为了确信信息的实时发送和接收是成功的,加入了让屏幕产生闪动效果的命令:display.clear() sleep(50)交流与协作相邻的两个同学一组,就可以玩发送和接收信息的游戏了。为了让传送信息的游戏更有趣,可以开展 4 人小组之间的信息传递:相邻的两个同学为一端,远处的两个同学为另一端,每一端有两块 micro:bit,一个 用于发送信息,另一个用于接收信息。例如,传递如下信息:1.What’s your birthday? 7/92.Who is your idol?Jack Ma通过玩传递信息的 ... ...
~~ 您好,已阅读到文档的结尾了 ~~