程序设计的基本方法.doc
- 格式:docx
- 大小:50.08 KB
- 文档页数:33
程序设计的基本方法
、课题:
二、教学目标:
⑴理解算法的概念,了解描述算法的两种方法一一自然语言和流程图,知道各自的优缺点。
⑵ 初步掌握用流程图描述算法。
三、教学的重点和难点:
⑴算法的概念。
⑵用流程图描述算法。
四、教学过程:
新课导入
我们在日常生活中经常要处理一些事情,就拿邮寄一封信来说
吧,大致可以将寄信的过程分为这样的几个步骤:写信、写信封、贴邮票、投入信箱等四个步骤。将信地投入到信箱后,我们就说寄信过程结束了。
那么在计算机中,它是如何来处理问题的呢?是否和我们日常处理事情的过程很类似呢?
回答是肯定的,例如要设计一个程序让计算机求1+1=?,那
么我们就要先编写程序。在编写程序前需要先确定解决问题的思路和方法,并要正确地写出求解步骤,这就是算法。
新授课
、算法的概念
为了更好地理解算法,举几个例子说明:
例1交换两个变量中的数据。
先请学生考虑解决这个问题的方法, 然后请一个学生说一说自 己想到的解决方法。如学生回答不出来,作适当提示:如果要将 醋瓶中的醋和酒瓶中的酒互换应怎么做?学生会很容易地想到 要借助于一只空瓶子。 分析题意:已知变量x 和y 中分别存放了数据,现在要交换其 中的数据。为了达到交换的目的,需要引进一个类似于空瓶子的 中间变量m 交换两变量中数据的具体算法如下:
①将x 中的数据送给变量m 即XT m
② 将y 中的数据送给变量X ,即yTX ;
③ 将m 中的数据送给变量y ,即nr y 。
例2输入三个不相同的数,求出其中的最小数。
同样,先请学生思考,然后请学生说出他所想到的解决该问题 的方法。 教师分析:先设置一个变量 min ,用于存放最小数。当输入 b 、c 三个不相同的数后,先将 a 与b 进行比较,把小者送给变
量min ,再把c 与min 进行比较,若c ① 若 a 总结:在程序设计中 ,交换变量中的数据常用在排序算法中。 a 、 min ,最后 min 中就是三个数中的最小数,具体算法如下: ②再将c与min进行比较,若cvmin,贝U c—min。这样,min 中存放的即是三个数中的最小数。 请学生思考以下两个问题: ⑴如果要求出三个不相同数中的最大数,该如何设计算法? ⑵ 如果是n个不相同的数,求出其中的最小数呢? 例3输入两个正整数a和b (a>b)求它们的最大公约数。 提问:什么叫最大公约数? 给学生思考后回答。然后举一个用欧几里德法求最大公约数的例子,如求56和32的最大公约数的过程如下: 56 ,32 ,24,8,0 则8就是56和32的最大公约数。从第三项开始的各项,分别 是前两项相除所得的余数,如果余数为0,它的前一项就是a和b的最大公约数。 算法如下: ①输入a,b(a>b); ②求a/b的余数r ; ③如果r工0则将ba a, r a b,再次求a/b的余数r,转③; ④输出最大公约数bo 总结:对于同一个问题,可以有不同的解决方法,即有不同的算法。 二、算法的描述 为了描述一个算法,可以用自然语言、流程图或其他形式进行。 前面的三个例子就是用自然语言描述的。自然语言就是人们日常使 用的语言。用自然语言描述算法,人们比较容易接受。但有个缺点就是叙述比较繁琐和冗长,容易出现“歧义性”。 请学生阅读课本中的讨论与思考,然后分别请学生将自己所理解的含义表述出来。学生可能有两种理解:“老张不认识这个人”和“这个人不认识老张”,从而说明自然语言表述容易产生 “歧义”。为了能够将解决问题的算法清晰、直观地表示出来,我们一起来学习流程图。 、课题: 二、教学目标: ⑴理解算法的概念,了解描述算法的两种方法一一自然语言和流程图,知道各自的优缺点。 ⑵初步掌握用流程图描述算法。 三、教学的重点和难点: ⑴算法的概念。 ⑵用流程图描述算法。 四、教学过程: 新课导入 我们在日常生活中经常要处理一些事情,就拿邮寄一封信来说 吧,大致可以将寄信的过程分为这样的几个步骤:写信、写信封、贴邮票、投入信箱等四个步骤。将信地投入到信箱后,我们就说寄信过程结束了。 那么在计算机中,它是如何来处理问题的呢?是否和我们日常处理事情的过程很类似呢? 回答是肯定的,例如要设计一个程序让计算机求1+1=?,那 么我们就要先编写程序。在编写程序前需要先确定解决问题的思路和方法,并要正确地写出求解步骤,这就是算法。 新授课 、算法的概念 为了更好地理解算法,举几个例子说明: 例1交换两个变量中的数据。 先请学生考虑解决这个问题的方法,然后请一个学生说一说自己想到的解决方法。如学生回答不出来,作适当提示:如果要将醋瓶中的醋和酒瓶中的酒互换应怎么做?学生会很容易地想到要借助于一只空瓶子。 分析题意:已知变量x和y中分别存放了数据,现在要交换其中的数据。为了达到交换的目的,需要引进一个类似于空瓶子的中间变量m交换两变量中数据的具体算法如下: ①将x中的数据送给变量m即XT m ②将y中的数据送给变量X,即yTX; ③将m中的数据送给变量y,即nr y。 总结:在程序设计中,交换变量中的数据常用在排序算法中。 例2输入三个不相同的数,求出其中的最小数。 同样,先请学生思考,然后请学生说出他所想到的解决该问题