资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
程序设计的基本方法程序设计的基本方法一、题: 程序设计的基本方法二、教学目标: 理解算法的概念,了解描述算法的两种方法自然语言和流程图,知道各自的优缺点。 初步掌握用流程图描述算法。三、教学的重点和难点: 算法的概念。 用流程图描述算法。四、教学过程:新导入我们在日常生活中经常要处理一些事情,就拿邮寄一封信说吧,大致可以将寄信的过程分为这样的几个步骤:写信、写信封、贴邮票、投入信箱等四个步骤。将信地投入到信箱后,我们就说寄信过程结束了。那么在计算机中,它是如何处理问题的呢?是否和我们日常处理事情的过程很类似呢?回答是肯定的,例如要设计一个程序让计算机求 1+1=?,那么我们就要先编写程序。在编写程序前需要先确定解决问题的思路和方法,并要正确地写出求解步骤,这就是算法。新授一、算法的概念为了更好地理解算法,举几个例子说明:例 1 交换两个变量中的数据。先请学生考虑解决这个问题的方法,然后请一个学生说一说自己想到的解决方法。如学生回答不出,作适当提示:如果要将醋瓶中的醋和酒瓶中的酒互换应怎么做?学生会很容易地想到要借助于一只空瓶子。分析题意:已知变量 x 和中分别存放了数据,现在要交换其中的数据。为了达到交换的目的,需要引进一个类似于空瓶子的中间变量。交换两变量中数据的具体算法如下:将 x 中的数据送给变量,即 x;将中的数据送给变量 x,即x;将中的数据送给变量,即。总结:在程序设计中,交换变量中的数据常用在排序算法中。例 2 输入三个不相同的数,求出其中的最小数。同样,先请学生思考,然后请学生说出他所想到的解决该问题的方法。教师分析:先设置一个变量 in,用于存放最小数。当输入 a、b、三个不相同的数后,先将 a 与 b 进行比较,把小者送给变量 in,再把与 in 进行比较,若in,则将的数值送给 in,最后 in 中就是三个数中的最小数,具体算法如下:若 ab,则 ain, 否则 bin;再将与 in 进行比较,若in,则in。这样,in 中存放的即是三个数中的最小数。请学生思考以下两个问题: 如果要求出三个不相同数中的最大数,该如何设计算法? 如果是 n 个不相同的数,求出其中的最小数呢?例 3 输入两个正整数 a 和 b (ab)求它们的最大公约数。提问:什么叫最大公约数? 给学生思考后回答。然后举一个用欧几里德法求最大公约数的例子,如求 6 和 32 的最大公约数的过程如下:6 ,32 ,24,8,0 则 8 就是 6 和 32 的最大公约数。从第三项开始的各项,分别是前两项相除所得的余数,如果余数为 0,它的前一项就是 a 和 b 的最大公约数。算法如下:输入 a,b(ab) ;求 a/b 的余数 r;如果 r0 则将 ba,rb,再次求 a/b 的余数 r,转;输出最大公约数 b。总结:对于同一个问题,可以有不同的解决方法,即有不同的算法。二、算法的描述为了描述一个算法,可以用自然语言、流程图或其他形式进行。前面的三个例子就是用自然语言描述的。自然语言就是人们日常使用的语言。用自然语言描述算法,人们比较容易接受。但有个缺点就是叙述比较繁琐和冗长,容易出现“歧义性”。请学生阅读本中的讨论与思考,然后分别请学生将自己所理解的含义表述出。学生可能有两种理解:“老张不认识这个人”和“这个人不认识老张”,从而说明自然语言表述容易产生“歧义”。为了能够将解决问题的算法清晰、直观地表示出,我们一起学习流程图。 让学生看大屏幕投影,简单介绍流程图的基本图形符号及其含义。 用流程图描述例 6-1-3 的算法,并对照流程图讲解各个符号的意义和作用。 请学生对照本例 6-1-1、例 6-1-2 的算法,观察图 6-1、图 6-2,进一步理解流程图各个符号的含义,并体会如何用流程图描述算法,时间分钟。巩固练习请学生写出求一元二次方程的根的算法,要求: 用自然语言描述; 用流程图描述。堂总结请学生用自己的语言总结这节的学习内容: 算法是指解决问题的思路和方法。 描述算法的形式有多种,常用的有:自然语言和流程图。用自然语言描述算法比较容易接受,但叙述冗长,容易产生“歧义”。用流程图描述算法比较清晰、直观,不容易产生“歧义”。 流程图中常用符号的含义。布置后练习节后练习 1、2、4
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号