(3)请其他学生评判【程序1】,并说明理由。有同学认为:该程序有点“傻”,缺乏“技术含量”。也有同学认为:如果要打印的图形比较大,图形的行数与“*”的个数较多的话,用这种思路就难以完成程序。
(4)教师总结学生的意见,并引导学生研究绘出图形的关键“要素”,并对【程序1】进行修正,逐一体现这些“要素”。
(5)学生经过第二次思考、交流、讨论,教师参与帮助,认定绘出图形的关键“要素”包括每一行的起始位置、图形的行数、每一行“*”的个数。
(6)教师请学生根据讨论的结果对【程序1】进行修正。有学生给出【程序2】,解决“每一行的起始位置”这一要素:
Print Tab(5);"*"
Print Tab(4);"***"
Print Tab(3);"*****"
Print Tab(2);"*******"
Print Tab(1);"*********"
Print Tab(2);"*******"
Print Tab(3);"*****"
Print Tab(4);"***"
Print Tab(5);"*"
(7)教师请其他学生评判【程序2】,并说明理由。学生的共识是反复使用Print语句,非常麻烦。有学生联系教材上等腰三角形的打印思路,想到用“嵌套循环”的方法。给出不完整的【程序3】
For i = 1 To 9
Print Tab(???);
For j = 1 To ???
Print "*";
Next j
Next i
(8)教师总结学生的意见,并进一步表明,下面的任务就是找到i值与起始位置、“*”的个数之间的关系。即如表1:
i 1 2 3 4 5 6 7 8 9
起始位置 5 4 3 2 1 2 3 4 5
“*”的个数 1 3 5 7 9 7 5 3 1
(9)学生研究表1,发现很难找到他们之间的关系。其困难之处在于起始位置和“*”的个数都是对称变化,而i值不是。但i值是可以自由设定的,那么,能否让i值也对称呢?有学生考虑让i值的范围为[-4,4],则Abs(i)为一组对称的数列。如表2:
Abs(i) 4 3 2 1 0 1 2 3 4
起始位置 5 4 3 2 1 2 3 4 5
“*”的个数 1 3 5 7 9 7 5 3 1
(10)在表2的基础上,学生很容易找到i值与起始位置之间的关系:
起始位置 = Abs(i)+1
这样,【程序3】可以完善为【程序4】:
For i = -4 To 4
Print Tab(Abs(i)+1);
For j = 1 To ???
Print "*";
Next j
Next i
但此时仍旧看不出i值与“*”的个数(即内循环次数)之间的关系。
首页 上一页 1 2 3 4 5 6 下一页 尾页 3/6/6
信息技术教学中互动策略的实践研究(三)由毕业论文网(www.huoyuandh.com)会员上传。