资源简介 (共21张PPT)3.2算法及其描述1什么是算法2算法的描述CONTENT3.2.1 算法高一(1)班下周要利用班会课举行班级活动,班主任给了班长50元,请他负责购买一些零食。班长到了小卖部,发现有三种小零食可以选择,价格分别是6元、5元和4元。他希望每种零食都买一点,且正好把班主任给的50元全部花光,那么他有多少种购买方案呢?想一想6元5元4元3.2.1 算法6元5元4元50元x包y包z包6x+5y+4z=50有多少组 解?正整数3.2.1 算法6x+5y+4z=50有多少组正整数解?想一想这个问题能用数学中解三元一次方程式的方法求解吗?为什么?有什么办法可以求解这个问题呢?x、y、z的取值范围分别是多少?121 ≤ x ≤ 8 1 ≤ y ≤10 1 ≤ z ≤1231 ≤ x ≤ 6 1 ≤ y ≤ 8 1 ≤ z ≤ 93.2.1 算法6x+5y+4z=50有多少组正整数解?1 ≤ x ≤ 8 1 ≤ y ≤10 1 ≤ z ≤126× +5× +4× =50xyzt(正整数解的个数)111023…1221…12…11021121当等式成立时,t=t+1………81012输出 t 的值既要保证所有组合都试过,又要避免重复代入某些组合3.2.1 算法求方程6x+5y+4z=50有多少组正整数解t=0;x=1;y=1;z=1;如果满足式子6x+5y+4z=50,则解的个数加1,即t=t+1(表示把右边式子的值赋给左边式子),并输出这个解(即t,x,y,z的值);z=z+1;如果z≤12,则跳转到步骤⑤,否则继续步骤⑧y=y+1;如果y≤10,则跳转到步骤④,否则继续步骤⑩x=x+1;如果x≤8,则跳转到步骤③,否则继续步骤 结束3.2.1 算法1算法算法是指在有限的步骤内求解某一问题所使用的一组定义明确的规则。通俗地说,算法就是计算机求解某一问题的方法,是能被机械地执行的动作或指令的有穷集合。生活中的“算法”制作美食组装家具算法有哪些特征?3.2.1 算法2算法的特征有穷性确定性数据输入数据输出可行性12345一个算法所包含的计算步骤是有限的。算法执行的每一个步骤必须有确切的定义,不能有模棱两可的情况。一个算法有零个或多个数据输入。一个算法有一个或多个数据输出,没有输出的算法是没有意义的。每个步骤都可以在有限时间内完成。3.2.1 算法求方程6x+5y+4z=50有多少组正整数解t=0;x=1;y=1;z=1;如果满足式子6x+5y+4z=50,则解的个数加1,即t=t+1(表示把右边式子的值赋给左边式子),并输出这个解(即t,x,y,z的值);z=z+1;如果z≤12,则跳转到步骤⑤,否则继续步骤⑧y=y+1;如果y≤10,则跳转到步骤④,否则继续步骤⑩x=x+1;如果x≤8,则跳转到步骤③,否则继续步骤 结束有穷性确定性没有输入,但有多个输出:t,x,y,z每一步都可以在有限时间内完成3.2.2 算法的描述算法是对解题过程的精确描述,需要用某种方法将其表示出来。1描述算法时常用的方法自然语言描述法用日常语言描述算法优点:容易掌握缺点:当算法中含有较多分支或循环操作较多时,使用自然语言难以将其描述出来;由于自然语言的歧义性,容易导致算法执行的不确定性。不够简洁不够准确3.2.2 算法的描述伪代码用介于自然语言和计算机语言之间的文字和符号来描述算法。它不用图形符号,书写方便,易于理解,便于向计算机程序设计语言过渡。不够实用3.2.2 算法的描述流程图图形 名称 功能开始/结束 表示算法的开始或结束输入/输出 表示算法中变量的输入或输出处理 表示算法中变量的计算与赋值判断 表示算法中的条件判断流程线 表示算法中的流向连接点 表示算法中的转接3.2.2 算法的描述求方程6x+5y+4z=50有多少组正整数解3.2.2 算法的描述代码段1代码段2顺序结构代码段1代码段2条件成立不成立选择结构代码段条件成立不成立循环结构3.2.2 算法的描述2三种基本控制结构代码段1代码段2顺序结构代码段1代码段2条件成立不成立代码段条件成立不成立选择结构循环结构任何算法都可以用顺序、选择、循环这三种基本控制结构的组合来表示。3.2.2 算法的描述使用三种基本控制结构的组合来描述算法,可以改善算法的清晰度,提高算法的可读性,原因如下:(1)以控制结构为单位,只有一个入口和一个出口,各单位之间接口简单,比较容易独立地理解每一单位;(2)缩小了算法的静态描述与动态执行过程之间的差异,使得两者容易对应,易于理解。顺序结构选择结构循环结构总结算法算法的特征有穷性确定性数据输入数据输出可行性算法的描述自然语言流程图伪代码基本控制结构顺序结构选择结构循环结构常用方法算法及其描述0个或多个1个或多个拓展高一(1)班下周要利用班会课举行班级活动,班主任给了班长50元,请他负责购买一些零食。班长到了小卖部,发现有三种小零食可以选择,价格分别是6元、5元和4元。他希望每种零食都买一点,且正好把班主任给的50元全部花光,那么他有多少种购买方案呢?6元5元4元(1)我们已经设计了解决这个问题的算法,计算机能“看懂”我们设计的算法流程图吗?(2)接下来,我们应该怎么做呢?想一想拓展程序运行结果练习题1、下面关于算法的描述,正确的是( )A、算法不可以用自然语言描述B、算法只能用流程图来描述C、一个算法必须保证它的执行步骤是有限的D、算法的流程图表示法有零个或多个输入,但只能有一个输出C2、求2+4+6+8+…+98+100= ,请你绘制流程图表示其算法。开始n=1s=0n≤50 输出s结束n=n+1s=s+2nNY 展开更多...... 收起↑ 资源预览