6月2日大陈上了Python入门第7课,从学生上交的练习题来看,第2题和第5题错误最多。
第2题:阅读程序写结果
for i in range(6):
print("*")
有一部分同学写的输出结果还是循环的范围:
0
1
2
3
4
5
实际应该输出6个*号,每行显示一个。
第5题:编写程序输出1-100之间的偶数。
正确答案应该是:
for i in range(2,101,2):
print(i)
有部分同学写的是:for i in range(1,100,2),还有的写的是for i in range(0,100,2)。
结合上述情况,大陈教初中生学Python第8课,先反馈上述作业中存在的问题,再和学生一起研究循环累加的问题,通过个问题的研究巩固练习for语句的使用。
图1 课题名称
根据我们前期的实践,循环累加是初中生学程序设计的难点之一,主要是因为学生对于变量的概念理解不充分、对于赋值认识不足、程序编写实验不多等,因此,在解决这个问题的时候,我们要给学生搭设“脚手架”,逐步突破难点。
例题
sum=0
print(sum)
在例题的基础上按以下顺序依次修改程序,和学生观察程序运行结果:
①sum=1;print(sum)
②sum=0;sum=1;print(sum)
③sum=0;sum=1;sum=sum 1;print(sum)
④sum=0;sum=1;x=3;sum=sum x;print(sum)
⑤
sum=0
for i in range(1,6):
print(i)
print(sum)
⑥
sum=0
for i in range(1,6):
sum=sum i
print(sum)
通过以上程序的变式,层层递进,让学生明白循环累加的含义。
根据学情,可以在第6个变化的程序sum=sum i的上下各增加一条print(sum),让学生可以清晰的看到sum的变化过程,增强对累加的理解。
最后是练习巩固以及总结提升环节。
附练习题:
1、计算机使用的键盘中,Shift键是( )。
A. 退格键 B. 上档键 C. 空格键 D. 回车键
2、阅读程序写结果
sum=0
for i in range(1,6):
sum=sum i*i
print(sum)
3、完善程序
求1×2 2×3 3×4 4×5 … 100×101的和是多少?
sum=
for i in range(1,101):
sum=sum
print(sum)