用计算机解决问题听课笔记,1.1计算机解决问题的过程

本篇博客探讨了计算机解决问题的过程,包括人工解题的分析问题、设计算法步骤,然后过渡到用计算机解题,涉及程序设计语言和调试程序。通过‘韩信点兵’问题为例,介绍了如何将自然语言描述的算法转化为计算机能理解的程序,并让学生体验到用计算机解决问题的效率。同时,课堂采用了探究、讲授、观摩和交流等多元教学方式,培养学生的分析、编程和合作能力。
摘要由CSDN通过智能技术生成

教学目标

知识性目标:

1、让学生了解算法、穷举法、程序设计语言、编写程序和调试程序等概念。

2、让学生知道对现实问题的自然语言的描述,特别是类似程序设计语言的自然语言描述。

3、让学生理解分析问题、设计算法、编写程序、调试程序这一用计算机解决问题的基本步骤,认识其在算法与程序设计中的作用。

技能性目标:

1、培养学生发现旧知识的规律、方法和步骤,并把它运用到新知识中去的能力。

2、培养学生调试程序的能力。

3、培养学生合作、讨论、观摩、交流和自主学习的能力。

情感性目标:

通过“韩信点兵”这个富有生动情节的实例和探究、讲授、观摩、交流等环节,让学生体验用计算机解决问题的基本过程。

重点难点

本节的重点用计算解决问题的过程中的分析问题、设计算法、和上机调试程序等步骤。用计算解决问题的过程中的分析问题、设计算法也是本节的难点。

教具选择

1、可以进行屏幕广播的多媒体电脑室。

2、教师自行设计制作的课件。

教学方法

让学生在人工解题中发现分析问题、设计算法等步骤,并把它应用到用计算机解决问题中去,这是构建主义中知识迁移的方法。本节课还采用了探究、讲授、观摩、交流、阅读材料等多种教学活动的有机结合的方法。

课时数:2课时

教学过程

(一)引入

教师:“在科技发达的今天,我们到处都可以看到计算机的踪影,感受到计算机给学习、生活带来的方便。然而,在惊叹计算机的神奇和享受的欢乐的时候,你是否了解计算解决问题的基本过程?有没有思考过其中的奥妙呢?下面我们先看一个古典的问题:”

“韩信是我国西汉初著名的军事家,刘邦得天下,军事上全依靠他。韩信点兵,多多益善,不仅如此,还能经常以少胜多,以弱胜强。在与楚军决战时韩信指挥诸侯联军,在垓下十面埋伏,击败楚军,楚霸王项羽因此自杀。”

片断结束时屏幕出现“韩信点兵”问题:“相传汉高祖刘邦问大将军韩信统御兵士多少,韩信答说,每3人一列余1人、5人一列余2人、7人一列余4人、13人一列余6人……。刘邦茫然而不知其数。你呢?”

(二)问题

教师:“下面我们先助刘邦解决一个简单的问题。”

展示题目:

“韩信点兵”问题1:求整除3余1、整除5余2、整除7余4的最小自然数。

(三)解决问题的过程

分析问题(找出已知和未知、列出已知和未知之间的关系)

写出解题步骤

结果

给5分钟学生讨论,教师在这过程中到各学习小组中,引导个别学习小组分析问题、写出解题步骤。

教师提问2~3个同学,从中逐渐引导出类似如下的分析问题和解题步骤,并给出算法的概念。

分析问题(找出已知和未知、列出已知和未知之间的关系)

写出解题步骤

设所求的数为X,则X应满足:

X整除3余1;X整除5余2;X整除7余4

1、令X为1。

2、如果X整除3余1,X整除5余2,

X整除7余4,这就是题目要求的数,则记下这个X。

3、令X为X+1(为算下一个作准备)。

4、如果算出,则结束;否则跳转2。

5、写出答案。

教师解释第3步“另X为X+1”并指出它与数学中的区别,并从上面的解题步骤中总结出穷举的算法。

教师:“刚才有些同学把题目解出来了,答案是67,韩信作为大将军,统率士兵当然不止67人,下面我们来解决一个数据量稍大的问题。”

展示题目:

“韩信点兵”问题2:求整除3余1、整除5余2、整除7余4、整除13余6、整除17余8的最小自然数。

给2分钟学生分析上述问题并写出算法,不用计算。学生有了第1题的经验,很快会写出和第一题类似的算法。如下:

分析问题(找出已知和未知、列出已知和未知之间的关系)

写出解题步骤

设所求的数为X,则X应满足:

X整除3余1;X整除5余2;X整除7余4;X整除13余6;X整除17余8

1、令X为1。

2、如果X整除3余1,X整除5余2,X整除7余4,X整除13余6,X整除17余8,则记下这个X。

3、令X为X+1。

4、如果算出,则结束;否则跳转2。

5、写出答案。

教师:“上面的结果超过1万,人工计算要很长时间,在科技发达的今天,你想到什么?”(用计算机解题)

(四)用计算机解决问题

教师:“计算机怎么样解决问题?用计算机解决问题,同样要经过分析问题、设计算法两步骤。”在讲授过程中展示人工解题中分析问题和设计算法这两个步骤。

教师:“用计算机解题,是不是输入上面的算法?上面用自然语言描述的算法,计算机不懂,必须翻译成计算机的语言,这就是程序设计语言。”教师展示与用Visual Basic语言编写的程序作对照。简单解释变Y的作用,并提示学生程序设计语言是我们以后学习的重点。

本例用Visual Basic语言编写的程序请看教材如下:

Private Sub Command1_Click()

Dim X As Integer, Y As Integer

X = 1: Y = 0

Do

If X Mod 3 = 1 Then

If X Mod 5 = 2 Then

If X Mod 7 = 4 Then

If X Mod 13 = 6 Then

If X Mod 17 = 8 Then Y = X

End If

End If

End If

End If

X = X + 1

Loop Until Y > 0

Print "韩信统御士兵数:"; Y

End Sub

教师:“程序编好以后,通过键盘输入计算机,并运行程序查看结果这个过程叫调试程序。”

(五)观摩

根据前面编制的程序,启动Visual Basic程序设计环境,输入程序代码,进行调试,最后得到运行的结果。具体操作步骤请看教材(第4、5页)。要求同组内先完成的同学帮助还未完成的同学。帮助的时候不能代劳,只能动口不动手。。

教师演示操作步骤。

学生上机调试程序,教师作个别指导,时间是10分钟。

操作时有些学生很快完成,有些学生则很慢,解决案是布置操作快的同学阅读教材并完成《计算机解决问题的过程》教学活动表中的填空题。较慢的同学在他们调试了约8分钟后告诉他们可以通过网上邻居下载程序。以便能在10分钟内调试出程序。

(六)交流

教师:“前面我们学习了用计算机解决问题的过程,它和人工解有什么关系呢?同一学习小组的同学一起探讨人工求解问题和用计算机求解问题的异同,并把讨论结果记录在《计算机解决问题的过程》教学活动表的“讨论记录”表中。如下:

关于求解问题的方式讨论记录

求解问题的方式

相同点

不同点

人工求解问题

用计算机求解问题

教师提问2~3个小组的讨论结果,并引导出大致如下的形式结果:

求解问题的方式

相同点

不同点

人工求解问题

分析问题、设计算法、得出结果、验算结果等

对题目进行解答、运算速度慢、不需要计算机等

用计算机求解问题

编写程序、调试程序、运算速度快等

小结:和

这节课我们学习了计算机解决问题的过程,这个过程如下图。

逐步展示:

对具体给出的问题进行分析,分析后进行算法的设计,再编写出程序并运行调试,最后得出正确的答案。

实践:课后完成教材第4页实践(1)

练习:完成教材第4页练习(2)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值