教案算法初步算法与流程图

合集下载

高中数学 第一章 算法初步 1.2 流程图教案 苏教版必修3

高中数学 第一章 算法初步 1.2 流程图教案 苏教版必修3

1.2 流程图教学目标:1.理解流程图的概念;2.能识别和理解简单框图的功能.教学重点:流程图的概念.教学难点:用流程图表示算法.教学过程:一、建构教学1.流程图的概念:流程图是用一些图框和流程线来表示算法程序结构的一种图形程序.它直观、清晰,便于检查和修改.其中,图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序.2.规范流程图的表示:①使用标准的框图符号;②框图一般按从上到下、从左到右的方向画,流程线要规范;③除判断框外,大多数框图符号只有一个进入点和一个退出点.④在图形符号内描述的语言要非常简练、清楚.二、数学运用例1 已知1()21xf x=+,写出求(4)(3)(2)(4)f f f f-+-+-++L的一个算法,并画出流程图.解1S0S←;2S4I←-;3S 1()21I f I ←+; 4S ()S S f I ←+; 5S 1I I ←+;6S 若4I ≤,转3S ,否则输出S .例2高一某班一共有50名学生,设计一个算法,统计班上数学成绩良好(分数大于80且小于90)和优秀(分数大或等于90)的学生人数,并画出流程图. 解:算法如下:1S 1n ←,0a ←,0b ←;2S 输入成绩r ;3S 若89r >,则1a a ←+,转5S ;4S 若80r >,则1b b ←+;5S 1n n ←+;6S 若50n ≤,转2S ,否则,输出a 和b ;三、要点归纳与方法小结 本节课学习了以下内容:1.如何识别简单的流程图所描述的算法. 2. 能识别和理解简单框图的功能。

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修

高中数学《算法初步》教案新人教A版必修章节一:算法概念及程序框图1. 教学目标:a. 理解算法的概念,体会算法在数学及日常生活中的应用。

b. 熟悉程序框图的基本组成部分,能够运用程序框图描述简单的算法。

2. 教学内容:a. 算法的定义及特性。

b. 程序框图的组成部分:顺序结构、条件结构、循环结构。

3. 教学重点与难点:a. 算法的概念理解。

b. 程序框图的绘制及应用。

4. 教学方法:a. 案例分析法:通过具体案例让学生理解算法概念。

b. 实践操作法:学生动手绘制程序框图,加深对算法理解。

5. 教学过程:a. 引入:通过日常生活中的算法案例,引导学生思考算法的概念。

b. 讲解:详细讲解算法的定义、特点及程序框图的组成部分。

c. 实践:学生动手绘制程序框图,教师巡回指导。

d. 总结:强调算法在实际问题中的应用价值。

章节二:顺序结构算法1. 教学目标:b. 能够运用顺序结构算法解决实际问题。

2. 教学内容:a. 顺序结构的定义及特点。

b. 顺序结构算法在实际问题中的应用。

3. 教学重点与难点:a. 顺序结构算法的理解。

b. 顺序结构算法在实际问题中的应用。

4. 教学方法:a. 案例分析法:通过具体案例让学生理解顺序结构算法。

b. 实践操作法:学生动手编写顺序结构算法,解决问题。

5. 教学过程:a. 引入:通过日常生活中的顺序结构算法案例,引导学生思考顺序结构的特点。

b. 讲解:详细讲解顺序结构的定义、特点及应用。

c. 实践:学生动手编写顺序结构算法,解决问题,教师巡回指导。

d. 总结:强调顺序结构算法在实际问题中的应用价值。

章节三:条件结构算法1. 教学目标:a. 理解条件结构的算法特点。

b. 能够运用条件结构算法解决实际问题。

2. 教学内容:b. 条件结构算法在实际问题中的应用。

3. 教学重点与难点:a. 条件结构算法的理解。

b. 条件结构算法在实际问题中的应用。

4. 教学方法:a. 案例分析法:通过具体案例让学生理解条件结构算法。

算法与程序框图教案

算法与程序框图教案

算法与程序框图教案教案标题:算法与程序框图教案教学目标:1. 了解算法和程序框图的概念及其在计算机科学中的重要性。

2. 掌握算法和程序框图的基本元素和表示方法。

3. 能够根据实际问题设计和实现简单的算法和程序框图。

教学准备:1. 教师准备:计算机、投影仪、教学PPT、白板、白板笔。

2. 学生准备:笔记本电脑或其他计算机设备。

教学过程:一、导入(5分钟)1. 教师通过展示一段程序代码,引导学生思考:在编写程序时,我们是如何组织和控制代码的执行顺序的?2. 学生回答后,教师引导学生思考:在日常生活中,我们是如何解决问题的?是否也需要一定的步骤和顺序?3. 引导学生思考并总结:在计算机科学中,我们通过算法和程序框图来描述和解决问题。

二、理论讲解(15分钟)1. 教师通过PPT或白板,简要介绍算法和程序框图的概念和作用。

2. 解释算法的定义:算法是一系列解决问题的明确指令或步骤。

3. 解释程序框图的定义:程序框图是一种图形化的表示方法,用于描述算法的执行流程和控制结构。

4. 介绍算法和程序框图的基本元素:起始点、结束点、输入/输出、判断、循环等。

三、示例分析(20分钟)1. 教师通过一个具体的例子,展示如何使用算法和程序框图来解决问题。

2. 教师首先列出问题的要求和输入条件,然后引导学生分析问题并设计算法。

3. 教师通过程序框图的绘制,展示算法的执行流程和控制结构。

4. 教师带领学生逐步实现算法,并通过编写程序代码进行验证。

四、练习与讨论(15分钟)1. 学生分组进行练习,设计算法和程序框图来解决给定的问题。

2. 学生展示自己的算法和程序框图,并进行讨论和改进。

3. 教师在讨论中指导学生理解和掌握算法和程序框图的设计原则和技巧。

五、巩固与拓展(10分钟)1. 学生个人或小组完成一道综合性问题的算法设计和程序框图绘制。

2. 学生展示自己的解决方案,并进行讨论和改进。

3. 教师总结本节课的教学内容,并对学生的表现给予肯定和指导。

浙教版初中信息技术第二课 算法与流程图 教学设计 (2)

浙教版初中信息技术第二课 算法与流程图 教学设计 (2)

课题第二课算法与流程图目标1、通过流程图实例分析,认识流程图中常用的几种流程图图形、名称及其含义,学会用流程图描述算法。

2、学会用Visio2010绘制流程图,加深对算法的理解,提高逻辑思维能力。

重难点重点:用流程图描述算法;用Visio 2010绘制流程图。

难点:把自然语言转换为流程图。

教学方法讲授法课时安排1课时教师活动学生活动设计意图一、导入1、复习(1)算法的概念(2)算法的特点(3)计算机解决算法问题的步骤2、回顾上节课的算法(1)定义三个变量X、Y、T;(2)把1赋值给变量X,把2赋值给变量Y;(3)把X中的值传递给T,再把Y 中的值传递给X,最后把T中的值传递给Y;(4)结束。

3、师:上节课我们使用的描述算法的语言叫自然语言,其实算法的描述方法很多,还有流程图、计算机语言等,其中流程图是算法设计时常用的一种描述方法,今天我们就来学习一下流程图。

二、认识流程图师:流程图是一种以图解方式表示算法的描述方法。

它常用的图形以及含义我们一一来认识一下。

1、认识图形及含义图形名称含义开始/终止框程序的开始或结束处理框对数据进行处理输入/输出框数据的输入输出判断框根据条件进行判断,选择其中一个分支学生回忆上节课学习的内容。

学生听讲并识记。

本课的内容与上节课是连贯的,在经过一个礼拜之后,学生可能已经产生遗忘,需要再巩固一下。

使用图表方式更加直观。

容易识记。

流程线 表示流程的走向 2、识记图形Ppt 展示图形,请同学连线。

三、画流程图1、教师示范流程图的画法师:既然已经看懂了流程图图形的含义,接下来我们要操练一下了,针对上一课中的交换两个变量的算法,用流程图如何表示呢?教师边画边讲解(将自然语言显示在旁边):第一步:开始框,第二步,赋值,把1赋给X ,把2赋给Y ,把0赋给T ,这是对数据进行处理,所以需要使用处理框。

第三步,交换,也是使用处理框,首先将X 的值赋给T ,接下来将Y 的值赋给X ,然后将T 的值赋给Y ,第四步,我要知道计算机操作的结果,希望计算机输出X,Y ,输出需要用到输入输出框。

第二课 算法与流程图 教案-文档资料

第二课 算法与流程图 教案-文档资料
观察内容的选择,我本着先静后动,由近及远的原则,有目的、有计划的先安排与幼儿生活接近的,能理解的观察内容。随机观察也是不可少的,是相当有趣的,如蜻蜓、蚯蚓、毛毛虫等,孩子一边观察,一边提问,兴趣很浓。我提供的观察对象,注意形象逼真,色彩鲜明,大小适中,引导幼儿多角度多层面地进行观察,保证每个幼儿看得到,看得清。看得清才能说得正确。在观察过程中指导。我注意帮助幼儿学习正确的观察方法,即按顺序观察和抓住事物的不同特征重点观察,观察与说话相结合,在观察中积累词汇,理解词汇,如一次我抓住时机,引导幼儿观察雷雨,雷雨前天空急剧变化,乌云密布,我问幼儿乌云是什么样子的,有的孩子说:乌云像大海的波浪。有的孩子说“乌云跑得飞快。”我加以肯定说“这是乌云滚滚。”当幼儿看到闪电时,我告诉他“这叫电光闪闪。”接着幼儿听到雷声惊叫起来,我抓住时机说:“这就是雷声隆隆。”一会儿下起了大雨,我问:“雨下得怎样?”幼儿说大极了,我就舀一盆水往下一倒,作比较观察,让幼儿掌握“倾盆大雨”这个词。雨后,我又带幼儿观察晴朗的天空,朗诵自编的一首儿歌:“蓝天高,白云飘,鸟儿飞,树儿摇,太阳公公咪咪笑。”这样抓住特征见景生情,幼儿不仅印象深刻,对雷雨前后气象变化的词语学得快,记得牢,而且会应用。我还在观察的基础上,引导幼儿联想,让他们与以往学的词语、生活经验联系起来,在发展想象力中发展语言。如啄木鸟的嘴是长长的,尖尖的,硬硬的,像医生用的手术刀―样,给大树开刀治病。通过联想,幼儿能够生动形象地描述观察对象。课题
高桥新区中心学校课堂教学设计
要练说,得练听。听是说的前提,听得准确,才有条件正确模仿,才能不断地掌握高一级水平的语言。我在教学中,注意听说结合,训练幼儿听的能力,课堂上,我特别重视教师的语言,我对幼儿说话,注意声音清楚,高低起伏,抑扬有致,富有吸引力,这样能引起幼儿的注意。当我发现有的幼儿不专心听别人发言时,就随时表扬那些静听的幼儿,或是让他重复别人说过的内容,抓住教育时机,要求他们专心听,用心记。平时我还通过各种趣味活动,培养幼儿边听边记,边听边想,边听边说的能力,如听词对词,听词句说意思,听句子辩正误,听故事讲述故事,听谜语猜谜底,听智力故事,动脑筋,出主意,听儿歌上句,接儿歌下句等,这样幼儿学得生动活泼,轻松愉快,既训练了听的能力,强化了记忆,又发展了思维,为说打下了基础。教学时间:9月11日星期 一

第一章 算法初步全章教案

第一章 算法初步全章教案

第一章 算法初步第一课时 1.1.1 算法的概念教学要求:了解算法的含义,体会算法的思想;能够用自然语言叙述算法;掌握正确的算法应满足的要求;会写出解线性方程(组)的算法、判断一个数为质数的算法、用二分法求方程近似根的算法.教学重点:解二元一次方程组等几个典型的的算法设计.教学难点:算法的含义、把自然语言转化为算法语言.教学过程:一、复习准备:1. 提问:我们古代的计算工具?近代计算手段?(算筹与算盘→计算器与计算机,见章头图)2. 提问:①小学四则运算的规则?(先乘除,后加减) ②初中解二元一次方程组的方法?(消元法) ③高中二分法求方程近似解的步骤? (给定精度ε,二分法求方程根近似值步骤如下:A .确定区间[,]a b ,验证()()0f a f b <,给定精度ε;B. 求区间(,)a b 的中点1x ;C. 计算1()f x : 若1()0f x =,则1x 就是函数的零点; 若1()()0f a f x <,则令1b x =(此时零点01(,)x a x ∈); 若1()()0f x f b <,则令1a x =(此时零点01(,)x x b ∈);D. 判断是否达到精度ε;即若||a b ε-<,则得到零点零点值a (或b );否则重复步骤2~4.二、讲授新课:1. 教学算法的含义:① 出示例:写出解二元一次方程组22(1)24(2)x y x y -=⎧⎨+=⎩的具体步骤. 先具体解方程组,学生说解答,教师写解法 → 针对解答过程分析具体步骤,构成其算法第一步:②-①×2,得5y =0 ③; 第二步:解③得y =0; 第三步:将y =0代入①,得x =2.② 理解算法: 12世纪时,指用阿拉伯数字进行算术运算的过程. 现代意义上的算法是可以用计算机来解决的某一类问题的程序或步骤,程序和步骤必须是明确和有效的,且能在有限步完成. 广义的算法是指做某一件事的步骤或程序. 算法特点:确定性;有限性;顺序性;正确性;普遍性.举例生活中的算法:菜谱是做菜肴的算法;洗衣机的使用说明书是操作洗衣机的算法;歌谱是一首歌曲的算法;渡河问题.③ 练习:写出解方程组()1111221222(1)0(2)a x b y c a b a b a x b y c +=⎧-≠⎨+=⎩的算法.2. 教学几个典型的算法:① 出示例1:任意给定一个大于1的整数n ,试设计一个程序或步骤对n 是否为质数做出判断.提问:什么叫质数?如何判断一个数是否质数? → 写出算法.分析:此算法是用自然语言的形式描述的. 设计算法要求:写出的算法必须能解决一类问题,并且能够重复使用. 要使算法尽量简单、步骤尽量少. 要保证算法正确,且计算机能够执行.② 出示例2:用二分法设计一个求方程230x -=的近似根的算法.提问:二分法的思想及步骤?如何求方程近似解→写出算法.③练习:举例更多的算法例子;→对比一般解决问题的过程,讨论算法的主要特征.3. 小结:算法含义与特征;两类算法问题(数值型、非数值型);算法的自然语言表示.三、巩固练习:1. 写出下列算法:解方程x2-2x-3=0;求1×3×5×7×9×11的值2. 有蓝和黑两个墨水瓶,但现在却错把蓝墨水装在了黑墨水瓶中,黑墨水错装在了蓝墨水瓶中,要求将其互换,请你设计算法解决这一问题.3. 根据教材P6 的框图表示,使用程序框表示以上算法.4. 作业:教材P4 1、2题.第二课时 1.1.2 程序框图(一)教学要求:掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图. 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图.教学重点:程序框图的基本概念、基本图形符号和3种基本逻辑结构.教学难点:综合运用框图知识正确地画出程序框图教学过程:一、复习准备:1. 写出算法:给定一个正整数n,判定n是否偶数.2. 用二分法设计一个求方程320x-=的近似根的算法.二、讲授新课:1. 教学程序框图的认识:①讨论:如何形象直观的表示算法?→图形方法.教师给出一个流程图(上面1题),学生说说理解的算法步骤.②定义程序框图:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.③④阅读教材P5的程序框图. →讨论:输入35后,框图的运行流程,讨论:最大的I值.2. 教学算法的基本逻辑结构:①讨论:P5的程序框图,感觉上可以如何大致分块?流程再现出一些什么结构特征?→教师指出:顺序结构、条件结构、循环结构.②试用一般的框图表示三种逻辑结构. (见下图)③出示例3:已知一个三角形的三边分别为4,5,6,利用海伦公式设计一个算法,求出它的面积,并画出算法的程序框图. (学生用自然语言表示算法→师生共写程序框图→讨论:结构特征)④出示例4:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图. (学生分析算法→写出程序框图→试验结果→讨论结构)⑤出示例5:设计一个计算1+2+3+…+1000的值的算法,并画出程序框图. (学生分析算法→写出程序框图→给出另一种循环结构的框图→对比两种循环结构)3. 小结:程序框图的基本知识;三种基本逻辑结构;画程序框图要注意:流程线的前头;判断框后边的流程线应根据情况标注“是”或“否”;循环结构中要设计合理的计数或累加变量等.三、巩固练习:1.练习:把复习准备题②的算法写成框图. 2. 作业:P12 A组1、2题.第三课时 1.1.2 程序框图(二)教学要求:更进一步理解算法,掌握算法的三个基本逻辑结构. 掌握画程序框图的基本规则,能正确画出程序框图.学会灵活、正确地画程序框图.教学重点:灵活、正确地画程序框图.教学难点:运用程序框图解决实际问题.教学过程:一、复习准备:1.2.顺序结构条件结构循环结构程序框图结构说明按照语句的先后顺序,从上而下依次执行这些语句. 不具备控制流程的作用. 是任何一个算法都离不开的基本结构根据某种条件是否满足来选择程序的走向.当条件满足时,运行“是”的分支,不满足时,运行“否”的分支.从某处开始,按照一定的条件,反复执行某一处理步骤的情况. 用来处理一些反复进行操作的问题二、讲授新课:1. 教学程序框图①出示例1:任意给定3个正实数,判断其是否构成三角形,若构成三角形,则根据海伦公式计算其面积. 画出解答此问题算法的程序框图.(学生试写→共同订正→对比教材P7 例3、4 →试验结果)②设计一个计算2+4+6+…+100的值的算法,并画出程序框图.(学生试写→共同订正→对比教材P9 例5 →另一种循环结构)③循环语句的两种类型:当型和直到型.当型循环语句先对条件判断,根据结果决定是否执行循环体;直到型循环语句先执行一次循环体,再对一些条件进行判断,决定是否继续执行循环体. 两种循环语句的语句结构及框图如右.说明:“循环体”是由语句组成的程序段,能够完成一项工作.注意两种循环语句的区别及循环内部改变循环的条件.④练习:用两种循环结构,写出求100所有正约数的算法程序框图.2. 教学“鸡兔同笼”趣题:①“鸡兔同笼”,我国古代著名数学趣题之一,大约在1500年以前,《孙子算经》中记载了这个有趣的问题,书中描述为:今有雏兔同笼,上有三十五头,下有九十四足,问雏兔各几何?②学生分析其数学解法. (“站立法”,命令所有的兔子都站起来;或用二元一次方程组解答.)③欣赏古代解法:“砍足法”,假如砍去每只鸡、每只兔一半的脚,则“独脚鸡”,“双脚兔”. 则脚的总数47只;与总头数35的差,就是兔子的只数,即47-35=12(只).鸡35-12=23(只).④试用算法的程序框图解答此经典问题. (算法:鸡的头数为x,则兔的头数为35-x,结合循环语句与条件语句,判断鸡兔脚数2x+4(35-x)是否等于94.)三、巩固练习:1. 练习:100个和尚吃100个馒头,大和尚一人吃3个,小和尚3人吃一个,求大、小和尚各多少个?分析其算法,写出程序框图. 2. 作业:教材P12 A组1题.第一课时 1.2.1 输入语句、输出语句和赋值语句教学要求:正确理解输入语句、输出语句、赋值语句的结构. 让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿. 通过实例使学生理解3种基本的算法语句(输入语句、输出语句和赋值语句)的表示方法、结构和用法,能用这三种基本的算法语句表示算法,进一步体会算法的基本思想. 教学重点:会用输入语句、输出语句、赋值语句.教学难点:正确理解输入语句、输出语句、赋值语句的作用.教学过程:一、新课导入:1. 提问:学习了哪些算法的表示形式?(自然语言或程序框图描述)算法中的三种基本的逻辑结构?(顺序结构、条件结构和循环结构)2. 导入:我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的. 因此还需要将算法用计算机能够理解的程序设计语言翻译成计算机程序. 程序设计语言有很多种. 如BASIC,Foxbase,C语言,C++,J++,VB,VC,JB 等.各种程序设计语言中都包含下列基本的算法语句:输入语句、输出语句、赋值语句条件语句和循环语句.今天,我们一起用类BASIC语言学习输入语句、输出语句、赋值语句. 基本上对应于算法中的顺序结构.二、讲授新课:1. 教学三种语句的格式及功能:①出示例1:编写程序,计算一个学生数学、语文、英语三门课的平均成绩.(分析算法→框图表示→教师给出程序,学生试说说对各语句的理解.)①出示例2:用描点法作函数y=x3+3x2-24x+30的图象时,需要求出自变量和函数的一组对应值. 编写程序,分别计算当x=-5,-4,-3,-2,-1,0,1,2,3,4,5时的函数值②出示例3:给一个变量重复赋值. (程序见P16)③出示例4:交换两个变量A和B的值,并输出交换前后的值.(教法:先分析算法→画出框图→编写程序→分析各语句→变式→小结:先写算法,再编程)3. 小结:输入、输出和赋值语句的格式;赋值“=”及表达式;编写简单程序解决数学问题.三、巩固练习:1. 练习:教材P16 1、2题 2. 作业:P16 3、4题.第二课时 1.2.2 条件语句教学要求:正确理解条件语句的概念,并掌握其结构. 会应用条件语句编写程序. 教学重点:条件语句的步骤、结构及功能.教学难点:会编写程序中的条件语句.教学过程:一、复习准备:1. 提问:算法的三种逻辑结构?条件结构的框图模式?2. 提问:输入语句、输出语句和赋值语句的格式与功能?3. 一次招生考试中,测试三门课程,如果三门课程的总成绩在200分及以上,则被录取. 请对解决此问题的算法分析,画出程序框图. (变题:…总成绩在200分以下,则不被录取)二、讲授新课:1. 教学条件语句的格式与功能:①分析:复习题③中的两种条件结构的框图模式?②给出复习题③的程序,试读懂程序,说说新的语句的结构及含义.③条件语句的一般有两种:IF—THEN语句;IF—THEN—ELSE语句. 语句格式及框图如下.分析语句执行流程,并说明:①“条件”是由一个关系表达式或逻辑表达式构成,其一般形式为“<表达式><关系运算符><表达式>”,常用的运算符有“>”(大于)、“<”(小于)、“>=”(大于或等于)、“<=”(小于或等于),“<>”(不等于). 关系表达式的结果可取两个值,以“真”或“假”来表示,“真”表示条件满足,“假”则条件不满足. ②“语句”是由程序语言中所有语句构成的程序段,即可以是语句组. ③条件语句可以嵌套,即条件语句的THEN 或ELSE后面还可以跟条件语句,嵌套时注意内外分层,避免逻辑混乱.2. 教学典型例题:②出示例5:编写程序,输入一元二次方程ax2+bx+c=0的系数,输出它的实数根.(算法分析→画程序框图→编写程序→给出系数的一组值,分析框图与程序各步结果)注意:解方程之前,先由判别式的符号判断方程根的情况. 函数SQR()的功能及格式.②讨论:例5程序中为何要用到条件语句?条件语句一般用在什么情况下?答:一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套③练习:编写程序,使得任意输入的2个实数从小到大排列.④出示例6:编写程序,使得任意输入的3个实数从小到大排列.(讨论:先用什么语句?→用具体的数值给a、b、c,分析计算机如何排列这些数?→写出程序→画出框图→说说算法→变式:如果是4个实数呢?3. 小结:条件语句的格式与功能及对应框图. 编程的一般步骤:①算法分析:根据提供的问题,利用数学及相关学科的知识,设计出解决问题的算法. ②画程序框图:依据算法分析,画出程序框图. ③写出程序:根据程序框图中的算法步骤,逐步写出相应的程序语句.三、巩固练习: 1. 练习:教材P22 1、2题.2. 试编写程序进行印刷品邮资的计算. (前100g 0.7元,以后每100g 0.4元)3. 作业:P22 3、4题.第三课时 1.2.3 循环语句教学要求:正确理解循环语句的概念,并掌握其结构. 会应用循环语句编写程序. 教学重点:两种循环语句的表示方法、结构和用法,用循环语句表示算法.教学难点:理解循环语句的表示方法、结构和用法,会编写程序中的循环语句. 教学过程:一、复习准备:1. 设计一个计算1+2+3+……+10的算法,并画出程序框图.2. 循环结构有哪两种模式?有何区别?相应框图如何表示?答:当型(while 型)和直到型(until 型). 当型循环语句先对条件判断,根据结果决定是否执行循环体,可能一次也不执行循环体,也称为“前测试型”循环;直到型循环语句先执行一次循环体,再对一些条件进行判断,决定是否继续执行循环体.二、讲授新课:1. 教学两种循环语句的格式与功能:① 给出复习题①的两种循环语句的程序,试读懂程序,说说新的语句的结构及含义.② 两种循环语句的语句结构及框图如下.说明:“循环体”是由语句组成的程序段,能够完成一项工作. 当使用WHIL 语句时,循环内部应当有改变循环的条件,否则会产生无限循环. 学习时注意两种循环语句的区别.③ 讨论:两种循环语句的区别?当型循环先判断后执行,直到型循环先执行后判断,则:在WHILE 语句中,是当条件满足时执行循环体;在UNTIL 语句中,先执行循环体,再当条件不满足时再执行循环体.2. 教学例题:① 出示例:编写程序,计算1+2+3+……+99+100的值.(分析:实现累加的算法 → 分别用两种循环语句编写 → 变题:计算20以内偶数的积.② 给出下列一段程序,试读懂程序,说说各语句的作用,分析程序的功能. (见教材P24)(读,找疑问 → 说各语句 → 分析功能)③ 练习:用描点法作函数y =x 3+3x 2-24x +30的图象时,需要求出自变量和函数的一组对应值. 编写程序,分别计算当x =-5,-4,-3,-2,-1,0,1,2,3,4,5时的函数值. ④ 分析右边所给出程序:当n=10时,结果是多少?程序INPUT “n=”;ni =1 a =0 WHILE i <= n a = a +(i +1)/i i = i+1WENDPRINT “…”;aEND实现功能?3. 小结:① 循环语句的两种不同形式:WHILE 语句和UNTIL 语句(还可补充了For 语句),掌握它们的一般格式.② 在用WHILE 语句和UNTIL 语句编写程序解决问题时,一定要注意它们的格式及条件的表述方法. WHILE 语句中是当条件满足时执行循环体,而UNTIL 语句中是当条件不满足时执行循环体.③ 循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务. 如累加求和,累乘求积等问题中常用到.三、巩固练习: 1. 练习:教材P24 1题.2. 编写程序,实现输出1000以内能被3和5整除的所有整数. (算术运算:5 MOD 3 =2)3. 作业:P24 2、3题.第一课时 1.3.1 算法案例---辗转相除法与更相减损术教学要求:理解辗转相除法与更相减损术中蕴含的数学原理,并能根据这些原理进行算法分析; 基本能根据算法语句与程序框图的知识设计出辗转相除法与更相减损术完整的程序框图并写出它们的算法程序.教学重点:理解辗转相除法与更相减损术求最大公约数的方法.教学难点:把辗转相除法与更相减损术的方法转换成程序框图与程序语言. 教学过程:一、复习准备:1. 回顾算法的三种表述:自然语言、程序框图(三种逻辑结构)、程序语言(五种基本语句).2. 提问:①小学学过的求两个数最大公约数的方法?(先用两个公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来.)口算出36和64的最大公约数. ②除了用这种方法外还有没有其它方法?6436128=⨯+,36∴和28的最大公约数就是64和36的最大公约数,反复进行这个步骤,直至842=⨯,得出4即是36和64的最大公约数.二、讲授新课:1. 教学辗转相除法:例1:求两个正数1424和801的最大公约数.分析:可以利用除法将大数化小,然后逐步找出两数的最大公约数. (适用于两数较大时)①以上我们求最大公约数的方法就是辗转相除法,也叫欧几里德算法,它是由欧几里德在公元前300年左右首先提出的. 利用辗转相除法求最大公约数的步骤如下:(1)用较大的数m 除以较小的数n 得到一个商0S 和一个余数0R ;(2)若0R =0,则n 为m ,n 的最大公约数;若0R ≠0,则用除数n 除以余数0R 得到一个商1S 和一个余数1R ;(3)若1R =0,则1R 为m ,n 的最大公约数;若1R ≠0,则用除数0R 除以余数1R 得到一个商2S 和一个余数2R ;……依次计算直至n R =0,此时所得到的1n R -即为所求的最大公约数.②由上述步骤可以看出,辗转相除法中的除法是一个反复执行的步骤,且执行次数由余数是否等于0来决定,所以我们可以把它看成一个循环体,它的程序框图如右图:(师生共析,写出辗转相除法完整的程序框图和程序语言)练习:求两个正数8251和2146的最大公约数. (乘法格式、除法格式)2. 教学更相减损术:我国早期也有求最大公约数问题的算法,就是更相减损术. 在《九章算术》中有更相减损术求最大公约数的步骤:可半者半之,不可半者,副置分母•子之数,以少减多,更相减损,求其等也,以等数约之.翻译为:(1)任意给出两个正数;判断它们是否都是偶数. 若是,用2约简;若不是,执行第二步.(2)以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数. 继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.例2:用更相减损术求91和49的最大公约数.分析:更相减损术是利用减法将大数化小,直到所得数相等时,这个数(等数)就是所求的最大公约数. (反思:辗转相除法与更相减损术是否存在相通的地方) 练习:用更相减损术求72和168的最大公约数.3. 小结:辗转相除法与更相减损术及比较①都是求最大公约数的方法,辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少;②结果上,辗转相除法体现结果是以相除余数为0得到,而更相减损术则以减数与差相等而得到.三、巩固练习:1、练习:教材P35第1题 2、作业:教材P38第1题 第二课时 1.3.2 算法案例---秦九韶算法教学要求:了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数、提高计算效率的实质;理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用.教学重点:秦九韶算法的特点及其程序设计.教学难点:秦九韶算法的先进性理解及其程序设计.教学过程:一、复习准备:1. 分别用辗转相除法和更相减损术求出两个正数623和1513的最大公约数.2. 设计一个求多项式5432()254367f x x x x x x =--+-+当5x =时的值的算法. (学生自己提出一般的解决方案:将5x =代入多项式进行计算即可)提问:上述算法在计算时共用了多少次乘法运算?多少次加法运算?此方案有何优缺点?(上述算法一共做了5+4+3+2+1=15次乘法运算,5次加法运算. 优点是简单、易懂;缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高.)二、讲授新课:1. 教学秦九韶算法:① 提问:在计算x 的幂值时,可以利用前面的计算结果,以减少计算量,即先计算2x ,然后依次计算2x x ⋅,2()x x x ⋅⋅,2(())x x x x ⋅⋅⋅的值,这样计算上述多项式的值,一共需要多少次乘法,多少次加法?(上述算法一共做了4次乘法运算,5次加法运算)② 结论:第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率,而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法能更快地得到结果.③ 更有效的一种算法是:将多项式变形为:5432()254367f x x x x x x =--+-+=,依次计算2555⨯-=,55421⨯-=,2153108⨯+=,10856534⨯-=,534572677⨯+=故(5)2677f =. ――这种算法就是“秦九韶算法”. (注意变形,强调格式) ④ 练习:用秦九韶算法求多项式432()2351f x x x x x =+-++当4x =时的值. (学生板书→师生共评→教师提问:上述算法共需多少次乘法运算?多少次加法运算?)⑤ 如何用秦九韶算法完成一般多项式1110()n n n n f x a x a x a x a --=++++的求值问题?改写:11101210()(()))n n n n n n n f x a x a x a x a a x a x a x a x a ----=++++=+++++. 首先计算最内层括号内一次多项式的值,即11n n v a x a -=+,然后由内向外逐层计算一次多项式的值,即212n v v x a -=+,323n v v x a -=+,,10n n v v x a -=+. ⑥ 结论:秦九韶算法将求n 次多项式的值转化为求n 个一次多项式的值,整个过程只需n 次乘法运算和n 次加法运算;观察上述n 个一次式,可发出k v 的计算要用到1k v -的值,若令0n v a =,可得到下列递推公式:01,(1,2,,)n k k n k v a v v x a k n --=⎧⎨=+=⎩.这是一个反复执行的步骤,因此可用循环结构来实现.⑦ 练习:用秦九韶算法求多项式5432()52 3.5 2.6 1.70.8f x x x x x x =++-+-当5x =时的值并画出程序框图.2. 小结:秦九韶算法的特点及其程序设计三、巩固练习:1、练习:教材P35第2题 2、作业:教材P36第2题 第三课时 1.3.3 算法案例---进位制教学要求:了解各种进位制与十进制之间转换的规律,会利用各种进位制与十进制之间的联系进行各种进位制之间的转换;学习各种进位制转换成十进制的计算方法,研究十进制转换为各种进位制的除k 去余法,并理解其中的数学规律. 教学重点:各种进位制之间的互化.教学难点:除k 取余法的理解以及各进位制之间转换的程序框图及其程序的设计.教学过程:一、复习准备:1. 试用秦九韶算法求多项式52()42f x x x =-+当3x =时的值,分析此过程共需多少次乘法运算?多少次加法运算?2. 提问:生活中我们常见的数字都是十进制的,但是并不是生活中的每一种数字都是十进制的.比如时间和角度的单位用六十进位制,电子计算机用的是二进制,旧式的秤是十六进制的,计算一打数值时是12进制的......那么什么是进位制?不同的进位制之间又有什么联系呢?二、讲授新课:1. 教学进位制的概念:① 进位制是人们为了计数和运算方便而约定的记数系统,“满几进一”就是几进制,几进制的基数就是几. 如:“满十进一”就是十进制,“满二进一”就是二进制. 同一个数可以用不同的进位制来表示,比如:十进数57,可以用二进制表示为111001,也可以用八进制表示为71、用十六进制表示为39,它们所代表的数值都是一样的. 表示各种进位制数一般在数字右下脚加注来表示,如上例中:(2)(8)(16)1110017139==② 一般地,任意一个k 进制数都可以表示成不同位上数字与基数的幂的乘积之和的形式,即1110()1...(0,n n n n k n n n n a a a a a k a a a k a k a ka k a k ----<<≤<=⨯+⨯+⨯+⨯.如:把(2)110011化为十进制数,(2)110011=1⨯25+1⨯24+0⨯23+0⨯22+1⨯21+1⨯20=32+16+2+1=51.把八进制数(8)7348化为十进制数,3210(8)7348783848883816=⨯+⨯+⨯+⨯=.2. 教学进位制之间的互化:①例1:把二进制数(2)1001101化为十进制数.(学生板书→教师点评→师生共同总结将非十进制转为十进制数的方法) 分析此过程的算法过程,编写过程的程序语言. 见P34②练习:将(5)2341、(3)121转化成十进制数.③例2、把89化为二进制数.分析:根据进位制的定义,二进制就是“满二进一”,可以用2连续去除89或所得商,然后取余数. (教师板书)上述方法也可以推广为把十进制化为k 进制数的算法,这种算法成为除k 取余法. ④练习:用除k 取余法将89化为四进制数、六进制数.⑤例3、把二进制数(2)11011.101化为十进制数.解:4(211-=⨯. (小数也可利用上述方法化进行不同进位制之间的互化. )变式:化为八进制→方法:进制互化3. 小结:进位制的定义;进位制之间的互化.三、巩固练习:1、练习:教材P35第3题 2、作业:教材P38第3题 第四课时 1.3.4 生活中的算法实例教学要求:通过生活实例进一步了解算法思想.教学重点:生活实例的算法分析.教学难点:算法思想的理解.教学过程:一、复习准备:1. 前面学习了哪几种算法案例?每种算法的作用及操作方法是怎样的?2. 算法思想在我们的生活中无处不在,如何利用我们所学习的知识解决生活中的实际问题?二、讲授新课:1. 霍奇森算法:提问:同学们经常会面对一个共同的问题,就是有时有太多的事情要做. 例如,你可能要面临好几门课的作业的最后期限,你如何合理安排以确保每门课的作业都能如期完成?如果根本不可能全部按期完成,你该怎么办?(霍奇森算法可以。

高中数学第1章算法初步1.2流程图讲义苏教版必修3

高中数学第1章算法初步1.2流程图讲义苏教版必修3

1.2 流程图1.流程图的概念流程图是由一些图框和流程线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,流程线表示操作的先后次序.2.流程图的图形符号及其应用依次进行多个处理的结构称为顺序结构.顺序结构的形式如图所示,其中A和B两个框是依次执行的.顺序结构是任何一个算法都离不开的最简单、最基本的结构.4.选择结构先根据条件作出判断,再决定执行哪一种操作的结构称为选择结构,也称为分支结构.如图所示,虚线框内是一个选择结构,它包含一个判断框,当条件p成立(或称为“真”)时执行A,否则执行B.思考1:一个选择结构只能有两个执行选项吗?[提示] 一个选择结构只能有两个执行选项.思考2:若有多于两种选项的情况怎样处理?[提示] 可以用多个选择结构嵌套组合来处理.5.循环结构(1)定义:在算法中,需要重复执行同一操作的结构称为循环结构.(2)分类:循环结构分为当型循环和直到型循环.①当型循环:先判断所给条件p是否成立,若p成立,则执行A,再判断条件p是否成立;若p仍成立,则又执行A,如此反复,直到某一次条件p不成立时为止,这样的循环结构称为当型循环.其示意图如图1所示:图1 图2②直到型循环:先执行一次循环体,再判断所给条件是否成立,若不成立,则继续执行循环体,如此反复,直到条件成立时为止,这样的循环结构称为直到型循环.其示意图如图2所示.1.下列对流程图的描述,正确的是( )A.流程图中的循环可以是无止境的循环B.选择结构的流程图有一个入口和两个出口C.选择结构中的两条路径可以同时执行D.循环结构中存在选择结构D[根据选择结构与循环结构的定义可知,A、B、C不正确.D正确.特别提醒:本题易错选B,判断框是一个入口和两个出口,但是选择结构中的两条路径,只能执行其一,不能同时执行,故B不正确.]2.如图所示的流程图的运行结果是________.第2题图第3题图5 2[根据流程图的意义可知,当a=2,b=4时,S=24+42=52.]3.阅读如图所示的流程图,运行相应的算法,输出的结果是________.11 [第一次运行,a=3;第二次运行a=11,11<10不成立,退出.] 4.如图是求实数x的绝对值的算法流程图,则判断框①中可填________.x >0或x ≥0 [根据绝对值定义解答,|x |=⎩⎪⎨⎪⎧x , x ≥0,-x , x <0.]①流程图中的图形符号可以由个人来确定; ②也可以用来执行计算语句; ③输入框只能紧接在起始框之后;④用流程图表示算法,其优点是将算法的基本逻辑结构展现得非常直接.④ [①中框图中的图形符号有严格标准,不能由个人确定;②中只能执行判断语句,不能执行计算语句;③中输入框不一定只能紧接在起始框之后.故①②③不正确,④正确.]1.理解流程图中各框图的功能是解此类题的关键,用流程图表示算法更直观、清晰、易懂.2.起止框用“”表示,是任何流程不可少的,表明程序的开始和结束.3.输入、输出框图用“”表示,可用在算法中任何需要输入、输出的位置,需要输入的字母、符号、数据都填在框内.4.处理框图用“”表示,算法中处理数据需要的算式、公式等可以分别写在不同的用以处理数据的处理框内,另外,对变量进行赋值时,也用到处理框.5.判断框是唯一具有超过一个退出点的图框符号.1.流程图中,符号“”可用于________.(填序号) ①输入;②输出;③赋值;④判断.③ [流程图中矩形方框的功能是赋值和计算.]2.对于流程图的图框符号的理解,下列说法中正确的是________.(填序号) ①输入框、输出框有严格的位置限定; ②任何一个流程图都必须有起止框;③对于一个流程图而言,判断框中的条件是唯一确定的; ④判断框是唯一具有超过一个退出点的图框符号.②④ [任何一个流程图都必须有开始和结束,因此必须有起止框;输入框和输出框可以用在算法中的任意需要输入和输出的位置;判断框中的条件不是唯一的.]思路点拨:对于套用公式型的问题,要注意所给公式中变量的个数及输入、输出部分的设计.先写出算法,再画出对应的流程图.本题可用顺序结构解决.[解] 算法如下: S1 输入a ,b ,h ; S2 S ←12(a +b )·h ;S3 输出S . 流程图如图.应用顺序结构表示算法的步骤(1)仔细审题,理清题意,找到解决问题的方法; (2)梳理解题步骤;(3)用数学语言描述算法,明确输入量,计算过程,输出量; (4)用流程图表示算法过程. 提醒:规范流程图的画法 (1)使用标准的框图符号;(2)框图一般按从上到下、从左到右的方向画,流程线要规范; (3)除判断框外,其他框图符号只有一个进入点和一个退出点; (4)在图形符号内描述的语言要非常简练、清楚.3.已知x =4,y =2,画出计算w =3x +4y 的值的流程图.[解] 本题可用顺序结构解决,利用流程图的定义及符号之间的联系即可画出流程图. 流程图如图:4.已知一个圆柱的底面半径为R ,高为h ,求圆柱的体积.设计一个解决该问题的算法,并画出相应的流程图.[解] 算法如下: 第一步,输入R ,h . 第二步,计算V ←πR 2h .第三步,输出V . 流程图如图所示:【例3】 设计一个算法,输入x 的值,计算并输出y 的值,且y =⎩⎪⎨⎪⎧-x +1,x <0,1,x =0,x +1,x >0,试画出该算法的流程图.[解] 该函数是分段函数,当给出一个自变量x 的值时,必须先判断x 的范围,然后确定利用哪一段的解析式求对应的函数值.因为解析式分了三段,所以判断框需要两个,即进行两次判断.算法步骤如下: 第一步 输入x ;第二步 若x <0,则y ←-x +1;否则执行第三步; 第三步 若x =0,则y ←1;否则,y ←x +1; 第四步 输出y . 流程图如图所示:1.选择结构是在需要进行分类讨论时所应用的逻辑结构,但是在某些问题中,需要经过几次分类才能够将问题讨论完全,这样就需要选择结构的嵌套.所谓嵌套,是指选择结构内,又套有小的分支,对条件进行两次或更多次的判断.常用于一些分段函数的求值问题.选择结构中算法的流程要根据条件流向不同的方向,此结构中的主要部分是判断框.选择结构的嵌套中可以含有多个判断框.一般地,如果是分三段的函数,需要引入两个判断框;如果是分四段的函数,需要引入三个判断框…以此类推.其流程图如图所示.2.在选择结构中,反映的是“先判断,后执行”的思想.选择结构的两个分支在写算法时实质上是一个步骤,不能写成两个步骤.如果一个分支中还有两个子分支,这时有两种处理方法:(1)直接嵌套在这一步中; (2)用“转到”某一步.提醒:根据分段函数,设计算法流程图时,必须引入判断框,运用选择结构,当题目出现多次判断时,一定要先分清判断的先后顺序,再逐层设计流程图.5.如图所示的流程图,若输入的x的值为0,则输出的结果为________.1 [这是一个嵌套的选择结构,当输入x=0时,执行的是y←1,即y=1.故输出的结果为1.]6.设计一个求解一元二次方程ax2+bx+c=0的算法,并画出流程图.[解] 依据求解一元二次方程的方法步骤设计算法,算法步骤如下:S1 输入3个系数a,b,c;S2 计算Δ←b2-4ac;S3 判断Δ≥0是否成立.若是,则计算p←-b2a,q←Δ2a;否则,输出“方程没有实数根”,结束算法;S4 判断Δ=0是否成立.若是,则输出x1=x2=p;否则,计算x1←p+q,x2←p-q,并输出x1,x2.流程图如图所示:[1.循环结构有哪两种形式?[提示] 循环结构有当型循环结构和直到型循环结构两种常见形式.2.当型循环结构和直到型循环结构有何区别?[提示] 当型循环结构与直到型循环结构的区别为当型循环结构首先进行条件的判断,然后再执行循环体,而直到型循环结构是先执行一次循环体,然后再进行条件的判断.3.当型循环结构和直到型循环结构是否可以相互转化?[提示] 这两种循环结构可以相互转化,需要注意的是,两者相互转化时,所满足的条件不同.【例4】指出图中流程图的功能.如果用的是循环结构,则写出用的是哪一种循环结构,并画出用另一种循环结构表示的流程图.思路点拨:依据当型循环和直到型循环的结构特征判断、改写.图中是先执行再判断,故采用的直到型循环结构,可用当型循环结构改写.[解] 题图所示的是计算12+22+32+…+992的值的一个算法的流程图,采用的是直到型循环结构,可用当型循环结构表示,如图所示:1.读如图所示的流程图,完成下面各题:(1)循环体执行的次数是________.(2)输出的结果为________.(1)49 (2)2 450 [(1)∵i←i+2,∴当2n+2≥100时循环结束,此时n≥49.(2)S=0+2+4+6+…+98=2 450.]2.指出图中流程图的功能,如果是循环结构,指出是哪一种循环结构,并画出用另一种循环结构表示的流程图.[解] 依据当型循环和直到型循环结构的特征判断改写.此流程图的功能是计算1×3×5×7×…×97的值.是当型循环结构,可用直到型循环结构表示,如图所示:1.循环结构主要用于解决有规律的重复计算问题,如累加求和、累乘求积等.如果算法问题里涉及的运算进行了多次重复的操作,且先后参与运算的各数之间有相同的变化规律,就可以引入循环变量参与运算,构成循环结构.2.要用好循环结构,需要注意三个环节:(1)确定循环变量和初始值,初始值的确定要结合具体问题,这是循环的基础;(2)确定循环体,循环体是算法中反复执行的部分,是循环进行的主体;(3)确定终止循环的条件,因为一个算法必须在有限步骤内完成.3.转化与化归思想在循环结构中有重要应用.循环结构的两种形式,当型循环结构与直到型循环结构可以相互转化,需要注意的是,相互转化时所满足的判断条件不同.1.本节课的重难点是理解流程图的作用,能用顺序结构,选择结构,循环结构书写算法.2.含条件结构问题的求解策略(1)理清所要实现的算法的结构特点和流程规则,分析功能;(2)结合框图判断所要填入的内容或计算所要输入或输出的值;(3)明确要判断的条件是什么,判断后的条件对应着什么样的结果.3.利用循环结构表示算法的步骤利用循环结构表示算法,第一要先确定是利用当型循环结构,还是直到型循环结构;第二要选择准确的表示累计的变量;第三要注意在哪一步开始循环,满足什么条件不再执行循环体.1.任何一种算法都离不开的基本结构为( )A.顺序结构B.选择结构C.循环结构D.顺序结构和选择结构A[顺序结构是最简单、最基本的结构,是任何一个算法都离不开的基本结构.]2.下列关于流程线的说法,不正确的是( )A.流程线表示算法步骤执行的顺序,用来连接图框B.流程线只要是上下方向就表示自上向下执行,可以不要箭头C.流程线无论什么方向,总要按箭头的指向执行D.流程线是带有箭头的线,它可以画成折线B[依据流程线的画法及其功能判断,A、C、D正确,B不正确.]3.根据所给流程图,当输入x=10时,输出的y的值为________.14.1 [由流程图可知,该流程图的作用是计算分段函数y =⎩⎪⎨⎪⎧1.2x , x ≤7,.9x -4.9, x >7的函数值.当输入x =10时,输出的y 值为1.9×10-4.9=14.1.]4.设计求1+3+5+7+…+99的算法,并画出相应的流程图.[解] 这是求50个数和的一道题,多次求和,可以利用循环结构完成.用变量S 存放求和的结果,变量I 作为计数变量,每循环一次,I 的值增加2.算法如下: S1 S ←0; S2 I ←1;S3 如果I ≤99,那么转S4,否则转S6; S4 S ←S +I ; S5 I ←I +2,转S3; S6 输出S . 流程图如图所示:。

§1.1.1 算法与程序框图 (共15张PPT)

§1.1.1 算法与程序框图 (共15张PPT)
结束
程序框图中的三种逻辑结构 顺序结构

输入n
i=1
条件结构
R=1? 是 n是质数
n不是质数
d整除n?

循环结构

是 R=0
d<= n-1 且R=0?
i=i+1

例3 已知一个三角形的三边边长分别为2,3,4,利用海伦-秦 九韶公设计一个算法,求出它的面积,画出算法的程序框图。
程序框图
p
开始
234 2
2 1.5 1.5 1.5 1.4375 1.4375 1.421875 1.421875 1.41796875
图1.1-1
实际上,上述步骤就是在求
2 的近似值。
练习
• 任意给定一个正实数,设计一个算法求以 这个数为半径的圆的面积。 • 任意给定一个大于1的正整数n,设计一个 算法求出n的所有的因数。
b2 c1 b1c2 a1b2 a2b1 a1c2 a2 c1 a1b2 a2b1
对于一般的二元一次方程组来说,这些步骤就构成了解 二元一次方程组的算法,我们可以根据这一算法编制计 算机程序,让计算机来解二元一次方程组。
算法这个词出现于12世纪,指的是用阿拉伯数字 进行算术运算的过程。在数学中,算法通常是指 按照一定规则解决某一类问题的明确和有限的步 骤。现在,算法通常可以编成计算机程序,让计 算机执行并解决问题
变式: 设计一个算法,判断35是否为质数
探究:你能写出整数n(n>2)是否为质数? • • • • 第一步,给定大于2的整数n. 第二步,令i=2. 第三步,用i除n,得到余数r. 第四步,判断;“r=0”是否成立. 若是,则n不是质数,结束算法; 否则,将i的值增加1,仍用i表示. 第五步,判断“i>n-1”是否成立. 若是,则n是质数,结束算法; 否则,返回第三步.
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一部分算法与程序框图
※知识回顾
1.算法的概念:算法通常是指按一定规则解决某一类问题的明确和有限的步骤.
2.程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.
3.程序框图的三种基本逻辑结构是顺序结构、条件结构、循环结构.
4.算法的描述方式有:自然语言、程序框图、程序语言.
5.算法的基本特征:①明确性:算法的每一步执行什么是明确的;②顺序性:算法的“前一步”是“后一步”的前提,“后一步”是“前一步”的继续;③有限性:算法必须在有限步内完成任务,不能无限制的持续进行;④通用性:算法应能解决某一类问题.
※典例精析
例1.如图所示是一个算法的程序框图,则该程序框图所表示的功能是
这类题型,有两种方法:
第一,代人特殊值法:具体带几个数进去看看它在干嘛?
第二,抽象的分析法:具体分析每个语句,看看这个程序在干嘛?
解析:首先要理解各程序框的含义,输入a,b,c三个数之后,接着判断a,b的大小,若b小,则把b赋给a,否则执行下一步,即判断a与c的大小,若c小,则把c赋给a, 否则执行下一步,这样输出的a是a,b,c 三个数中的最小值.所以该程序框图所表示的功能是求a,b,c三个数中的最小值.
评注: 求a,b,c 三个数中的最小值的算法设计也可以用下面程序框图来表示.
例2.下列程序框图表示的算法功能是( ) (1)计算小于100的奇数的连乘积 (2)计算从1开始的连续奇数的连乘积 (3)计算从1开始的连续奇数的连乘积, 当乘积大于100时,计算奇数的个数 (4)计算≥1×3×5××n 100成立时n 的最小值
这类题型,有自己的方法,这里是高考的重点,每年必考的题型。

这类题,具体步骤:
将程序运行;
----》把每一步都写成一行(注意,不要算值) ----》竖直方向我们找规律
----》找结束的时候的点,做最后项。

解析:为了正确地理解程序框图表示的算法,可以将执行过程分解,分析每一步执行的结果.可以看出程序框图中含有当型的循环结构,故分析每一次循环的情况,列表如下: 第一次:13,5S i =⨯=; 第二次:135,7S i =⨯⨯=;
第三次:1357,9S i =⨯⨯⨯=,此时100S <不成立,输出结果是7,程序框图表示的算法功能是求使

1×3×5××n 100成立时n 的最小值.
选D.
评注:通过列表,我们能清楚了解程序的每一步中的各个变量是怎样变化的,这正是程序运行的本质所在.本题若要求编写求使≥1×3×5××n 100成立时n 的最小值的程序框图或程序时,很容易弄错输出的结果,应注意.
例3.在音乐唱片超市里,每张唱片售价为25元,顾客如果购买5张以上(含5张)唱片,则按九折收费,如果购买10张以上(含10张)唱片,则按八折收费,请设计算法步骤并画出程序框图,要求输入张数x ,输出实际收费y(元).
分析:先写出y 与x 之间的函数关系式,有25(5)22.5(510)20(10)x x y x x x x <⎧⎪
=≤<⎨⎪≥⎩
,再利用条件结构画程序框图.
解: 算法步骤如下: 第一步,输入购买的张数x
,
第二步,判断x
是否小于5,若是,计算25y x =; 否则,判断x 是否小于10,若是,计算22.5y x =;否则,计算20y x =.
第三步,输出y . 程序框图如下:
评注:凡必须先根据条件做出判断,然后再决定进行哪一个步骤的问题,在画程序框图时,必须引入判断框,采用条件结构设计算法.如果变量分三级(或以上)时,就需要用到条件结构的嵌套,不能忽视结果中“是”、“否”的书写,否则不知道执行哪一条路径.一般地,分n 段的分段函数,需要引入1n -个判断框.条件结构有以下两种基本类型.
例4.画出求22
2
111
123100+
+++
的值的程序框图.
分析:这是一个有规律的数列求和问题,每次都进行了相同的运算,故应用循环结构进行算法设计. 解:程序框图如下:
(1)当型循环 (2)直到型循环
评注: (1) 解题关键是选择好计数变量i 和累加变量S 的初始值,并写出用i 表示的数列的通项公式是 ; (2)循环结构主要用在一些有规律的重复计算的算法中,如累加求和,累乘求积等问题.在循环结构中,要注意根据条件,设计合理的计数变量、累加(积)变量以及它们的初始值等,特别要注意循环结构中条件的表述要恰当、精确,以免出现多一次或少一次循环.
(3)循环结构分为两类:一类是当型循环结构,如下左图所示;另一类是直到型循环结构,如下右图所示.
变式训练
画出求2
22
111
147
100
+
+++
的值的程序框图. 解:程序框图如下:
5.某工厂2014年的生产总值为200万元,技术改进后预计以后后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预期年生产总值超过300万元的最早年份及2014年到此年份之前(不包此年份)的年生产总值的和.
这类题型,有具体的算法:
第一步,写成数学式子;
第二步,把数学式子用自然语言表示;
第三步,按照描述顺序写流程图:
开始--》输入--》条件或者处理--》输出--》结束。

分析:本例可用循环结构来实现. (1) 确定“循环体”:设a 为某年的年生产总值,n 为年份,S 为年产值的总和,则循环体为
(2)初始化变量:n 的初始值为2005,a 的初始值为200,S 的初始值为0. (3)设定循环控制条件:300a > 解: 程序框图如下:
评注:本问题的关健是设计好循环体,注意S S a =+与n 之间的对应关系.本题若将S S a =+放在1n n =+之后,则输出时须重新赋值1n n =-,否则n 的值为超过300万的年份的下一年.本题也可用当型循环结构来表示.
变式训练:设计一个程序框图,求使1235000S n =⨯⨯⨯⨯>的最小n 的值,并输出此时S 的值.
,
0.05,1.S S a a a a n n =+=+=+
解:程序框图如下:
※基础自测
一、选择题
1.下列说法正确的是()
A.算法就是某个问题的解题过程;
B.算法执行后可以产生不同的结果;
C.解决某一个具体问题算法不同结果不同;
D.算法执行步骤的次数不可以很大,否则无法实施.
1.解析:选项A,算法不能等同于解法;选项B,例如:判断一个正整数是否为质数,结果为“是质数”和“不是质数”两种;选项C,解决某一个具体问题算法不同结果应该相同,否则算法构造的有问题;选项D,算法可以为很多次,但不可以无限次.选B.
2、如图所示的程序框图中,则第3个输出的数是( )
A.1 B. 3
2
C.2
D.
5
2
2.解析:前3个分别输出的数是1,3
2
,2.故选C.
当工资薪金所得不超过3600元,计算个人所得税的一个算法框图如图. 则输出①、输出②分别为( ).
A .0.05;0.1x x
B .0.05;0.1185x x -
C . 0.0580;0.1;x x -
D .0.0580;0.1185x x --
5.解析: 设全月总收入金额为x 元, 所得税额为y 元,则y 与x 之间的函数关系为
0(01600)(1600)5%(16002100)25(2100)10%(21003600)x y x x x x <≤⎧⎪
=-<≤⎨⎪+-<≤⎩
选D.
二、填空题
6.(高考山东卷)执行右边的程序框图,若p =0.8,则输出的n =________..
开始 结束
输入x
输出0
输出①
输出②
0<x ≤1600?
1600<x ≤2100?
2100<x ≤3600?






S=++++=
8.解析:2461002550
三、解答题
9.请阅读下面程序框图,说明此程序的功能
解:程序功能是求s的值.
26
s=++++,并输出s
122 (2)
10.已知函数
2
2
(2)(0)
4(0)
(2)(0)
x x
y x
x x
⎧+<

==

⎪->

,请画出程序框图,要求输入自变量x的值,
输出函数值y.
10.解:
11.画出一个计算151015100
⨯⨯⨯⨯⨯的程序框图. 11解:程序框图如下。

相关文档
最新文档