资源简介 (共24张PPT)问题与算法探究活动生活中的算法算法的描述方法算法的特征BDCA一、生活中的问题与算法一、生活中的问题与算法生活中的算法在日常生活中,我们经常也会遇到很多问题,而我们在解决问题时所进行的一系列操作,常常包含有算法的概念,只是我们往往没有意识到罢了。从广义上来讲,算法指的是解决问题的方法和步骤。算法的特征算法的特征有穷性确定性输入输出可行性一个算法在执行有限步骤后再有限的时间内能够实现。一个算法中的每一个步骤的表述都是确定的、没有歧义的语句。输入是算法在执行时从外界获得的数据;零个输入代表算法没有外部输入。输出是算法执行的结果;没有输出的算法是没有意义的。每一个步骤都能有效的执行,并得到确定的结果。想一想小明给客人沏茶,接水1分钟,烧水6分钟,洗茶杯2分钟,拿茶叶1分钟,沏茶1分钟.小明合理安排以上事情,最少要______分钟使客人尽快喝茶.? 想一想小明给客人沏茶,接水1分钟,烧水6分钟,洗茶杯2分钟,拿茶叶1分钟,沏茶1分钟.小明合理安排以上事情,最少要______分钟使客人尽快喝茶.? 接水→烧水(洗茶杯+拿茶叶)→沏茶1+6+1=8(分钟)答:最少要8分钟使客人尽快喝茶如果 洗茶杯→拿茶叶→接水→烧水→沏茶,需要多少分钟?2+1+1+6+1=11(分钟)对于同一个问题可以有不同的算法。算法虽然没有对错之分,但却有优劣之分,选择合适的算法可以大大地提高工作效率。算法的描述方法自然语言流程图伪代码算法的描述方法算法的描述方法三者区别算法的描述方式 优势 不足自然语言 通俗易懂 歧义性,语句太长,循环和分支难表达流程图 描述清晰简洁,不依赖计算机 占用区域大伪代码 近似程序代码,方便程序员快速编程实现 专业性要求较高医务室现有一瓶碘伏、一瓶酒精。怎样在不混合的情况下,把两个瓶子内的液体互换?请用自然语言描述一下两种液体互换的算法。(1)将碘伏倒入空瓶。(2)将酒精倒入碘伏瓶。(3)将碘伏倒入酒精瓶。试一试试一试——农夫过河有一个农夫带着一头羊,一只狼和一颗大白菜准备过河,他找到一只很小的船,每次只能带一样东西过去,可是如果让狼与羊单独在一起,狼会吃羊,让羊与白菜单独在一起,羊会吃白菜,农夫应如何过河?第1步:农夫带羊过河。第2步:农夫放下羊,独自返回第3步:农夫带狼过河第4步:农夫放下狼,带羊返回第5步:农夫放下羊,带菜过河第6步:农夫返回第7步:农夫带羊过河用自然语言描述算法自然语言描述算法的优缺点:通俗易懂,易于被大众所理解。优点:缺点:一般比较冗长,容易产生岐义,有时会导致算法执行的不确定性。问题比较复杂时,显得不够条理,甚至有些混乱。用流程图描述算法概念:以特定的图形符号和说明表示算法的图,称为“算法流程图”。过程:1、用自然语言表述算法步骤。2、确定每一个算法步骤所包含的逻辑结构,并用相应的程序框表示,得到该步骤的程序框图。3、将所有步骤的程序框图用流程线连接起来,并加上终端框,得到表示整个算法的流程图。程序框 名称 功能常用的“流程图”所用的基本符号起止框表示算法的开始和结束处理框表示需要用户输入或由计算机自动输出的信息判断框表示执行一个步骤输入输出框表示要根据条件选择执行路线流程线指示流程的方向用流程图描述农夫过河准备农夫带羊过河农夫放下羊,独自返回农夫带狼过河农夫放下狼,带羊返回农夫放下羊,带菜过河农夫返回农夫带羊过河结束用流程图描述求解a的绝对值的算法开始输入aa>=0a=aa=-a是否输出a结束1、输入一个数a;2、如果a大于零则a=a,否则a=-a;3、输出a;4、结束。医生给病人注射青霉素或头孢类抗生素之前,必须要做皮试。15分钟后看皮试结果,皮试合格(是否过敏)才能注射,否则不能注射。请你根据流程符号相关功能,尝试完善下列算法流程图。开始可以注射是否结束皮试注射等待15分钟是否过敏不能注射某超市开业,为了提升活动效果,实行了购物打折活动,规则如下:(1)购物金额大于等于1000元,打八五折。(2)购物金额小于1000元,不打折。开始是否大于等于1000元是否结束输入购物金额打八五折打八折用流程图描述有任意3个整数,由键盘输入,输出其中最大的数。画出该问题的算法流程图。算法的五个特征算法的描述方法探究流程图课堂小结 展开更多...... 收起↑ 资源预览