分享

第一节 解决问题的一般方法

 数术穷天地 2015-05-15

了解利用计算机解决问题的基本过程;学会分析哪些问题需要编写计算机程序来解决;体验程序设计的内涵及魅力,产生对程序设计的求知欲,形成积极主动地学习算法与程序设计的态度。

重点:了解利用计算机解决问题的基本过程

难点:学会分析哪些问题需要编写计算机程序来解决

评论( 0 ) 活动1 【讲授】引入

日常生活中我们会遇到各种各样的问题,随着计算机技术的发展,大多数问题都可以使用计算机来解决。其中,有些问题可以使用现成的计算机工具软件解决,有些问题则需要编写特定的计算机程序才能解决。本节我们将学习解决问题的一般方法,特别要学会辨别哪些问题需要编写计算机程序来解决,并经历计算机解决问题的基本过程。

评论( 0 ) 活动2 【讲授】分析问题

首先提出一个问题:全班同学谁最高?

分析问题首先要明确问题的目标和条件。该问题中目标为求出“全班同学谁的身高最高”,条件是已知全班每一个同学的身高。

其次要理解问题,即要搞清楚问题涉及了哪些方面的知识。

任务1:提出能用计算机解决的问题.

问题1:学校期末考试后各科成绩统计

问题2:计算10000以内的奇数和

问题3:____________________________

问题4:____________________________

问题5:_____________________________

评论( 0 ) 活动3 【讲授】确定方案

人们通常将问题的解决方案分为算法方案和启发式方案

我们把能使用计算机解决的问题分为三类:

  1. 使用现有的工具软件可以解决的问题。
  2. 现成的工具软件解决不了,需要编写程序并通过执行程序才能解决的问题。
  3. 现成的工具软件不能直接解决,也需要编写程序,但不能通过级既定步骤直接解决的问题。

“全班同学谁的身高最高”这个问题的解决方案可能有多种,我们试着列出一种:让计算机来比较全班同学的身高值,找出最大值,即可知道全班同学谁最高。

此方案经过若干个步骤后能直接得出结论,并且不需要反复验证,由此可以判定该方案属于算法方案,可以通过编写计算机特定的程序来解决。

任务2:列出解决问题的方案。

问题1的解决方案:可以用计算机数据处理软件进行成绩统计。这属于第一类能够利用现有的工具软件解决的问题。

问题2的解决方案:由计算机求出10000以内的所有奇数,再将所有的奇数求和。此方案经过若干步骤后能直接得出结论,但需要通过编写计算机程序来解决,属于第二类问题。

问题3的解决方案:_____________________________

问题4的解决方案:------------------_____________________________

问题5的解决方案:_____________________________

评论( 0 ) 活动4 【讲授】设计步骤

现在我们根据方案来设计具体的解决步骤,即进行算法设计。因为考虑到是用计算机解决问题,所以这些步骤必须适用于计算机执行。

本例解决方案的关键是对身高值进行比较,找出最大值,据此可以列出如下步骤:

步骤1:输入第一个同学的身高值;

步骤2:输入下一个同学的身高值;

步骤3:比较两个同学的身高值;

步骤4:选出较大值;

步骤5:再输入下一个同学的身高值;

步骤6:用这个同学的身高值和上述较大值进行比较;

步骤7:再选出较大值;

重复步骤5至步骤7,直到输入最后一个同学的身高值,比较后选出较大值,该较大值即为全班同学中最高同学的身高值。

评论( 0 ) 活动5 【讲授】设计程序

算法方案通常都要通过编写特定的计算机程序来实现,即用计算机能够理解的语言(程序设计语言)将算法表达成程序,得出最终结果,这个过程就是设计程序。

问题分析是算法设计的基础,算法设计又是设计程序的基础。选择一种什么样的程序设计语言来解决问题并不是最重要的,关键是要把握算法与程序设计的思想。。

例如,“全班同学谁最高”的问题,按上述算法编写的程序运行结果如下图所示。

评论( 0 ) 活动6 【讲授】小结

本节课我们通过“全班同学谁最高”这一问题,体验了利用计算机解决问题的基本过程,知道了使用计算机解决问题的三种方法,即利用现有的工具软件、编程和利用人工智能技术,在此基础上引出算法的思想与程序设计的概念。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多