练习1、下列关于算法的概念,正确的是()。A.算法就是流程图B.算法就是为解决某一问题而设计的确定的步骤C.算法就是为解决某一问题而设计的有限步骤D.算法就是为解决问题而设计的确定的有限的步骤2、以下关于算法的说法中哪句是正确的()。A.一个算法必定会有输入和输出B.一个算法一定有输入,但不一定有输出C.一个算法不可能同时有输入与输出D.一个算法可能没有输入,但必定会输出复习•什么是算法?•是在有限步骤内求解某一问题所使用的具有精确定义的一系列操作规则。算法的特征1.有穷性2.确定性3.可行性4.有0或多个输入5.有1或多个输出设计程序要考虑的问题1.数据的存储2.计算的过程猜商品价格游戏的算法在一次班级联欢会上,同学们玩了一个猜商品价格的游戏。A同学出示一商品,价格在1~1000元之间,要求B同学猜价格。B同学每猜一个价格,A同学需要回答猜对了,或猜大了,还是猜小了。要求B同学尽可能快地猜出商品价格。[方法一]B同学从1、2、3、……、1000,依次猜,直到猜对为止。[方法二]B同学先从1~1000的中间数500开始猜,根据A同学的回答决定下一个猜的价格数。如果猜大了,则在1~499之间取中间数继续猜;如果猜小了,则取501~1000之间的中间数继续猜……如此反复,直到猜对为止。在1~1000内猜商品价格A同学的工作1.知道实际价格2.把B同学猜的价格与实际价格比较;3.回答猜大了;4.回答猜小了;5.回答猜对了。•A同学的工作1.知道实际价格2.提示B同学猜商品价格;3.把B同学猜的价格与实际价格比较;4.回答猜大了,回到步骤2;5.回答猜小了,回到步骤2;6.回答猜对了,结束。在1~1000内猜商品价格计算机求解:第一步:考虑数据的存储设置两个变量:变量T:B同学猜测的价格变量S:商品实际价格A同学的工作1.知道实际价格2.提示B同学猜商品价格;3.把B同学猜的价格与实际价格比较;4.回答猜大了,回到步骤2;5.回答猜小了,回到步骤2;6.回答猜对了,结束。在1~1000内猜商品价格A同学的工作1.知道实际价格S2.提示B同学输入猜测商品的价格T;3.TS回答猜小了,回到步骤2;4.TS回答猜大了,回到步骤2;5.T=S回答猜对了,结束。计算机求解:第一步:考虑数据的存储设置两个变量:变量T:B同学猜测的价格变量S:商品实际价格第二步:计算的过程开始显示:“输入价格”输入价格到变量TTSTS显示:“猜对了”显示:“猜小了”显示:“猜大了”结束YYNNS←商品价格A同学的工作1.知道实际价格S;2.提示B同学输入猜测商品的价格T;3.TS回答猜小了,回到步骤2;4.TS回答猜大了,回到步骤2;5.T=S回答猜对了,结束。流程图符号图形名称处理框输入输出框判断框开始、结束符流程线连接框开始输入价格到变量TS←商品价格TSTS显示:“猜对了”显示:“猜小了”显示:“猜大了”结束YYNN显示:“输入价格”判断下列框图的对错abcdefg算法的表示流程图自然语言伪代码伪代码使用某些程序设计语言中的控制结构,来描述算法中各步骤的执行次序和模式,使用自然语言、数学符号或其他符号,来表示计算步骤要完成的处理或需要涉及的数据。1.开始2.将实际价格赋值给S;3.显示:“输入价格”;4.输入B同学猜的商品价格;5.TS回答猜小了,回到步骤3;6.TS回答猜大了,回到步骤3;7.T=S回答猜对了;8.结束。自然语言描述的算法伪代码描述的算法(VB伪代码)S=实际价格DoWhileTST=InputBox(“输入价格”)IfTSThen显示“猜小了”IfTSThen显示“猜大了”Loop显示“猜对了”结束程序在内存中的分布1S←实际价格2显示“输入价格”3输入价格到变量T4如果TS,转到85如果TS,转到106如果T=S,显示“猜对了!”7结束8显示“猜小了!”9转到210显示“猜大了”11转到212商品价格变量S13猜的价格变量T指令区数据区指令区的指令按序号顺序执行小结算法的表达方式有哪些?流程图自然语言伪代码流程图的基本符号有哪些?练习1、流程图中的判断框,有()。A.一个入口和两个出口B.两个入口和一个出口C.一个入口和一个出口D.两个入口和两个出口练习2、有一个算法描述如下:①定义变量a,b,c;②将3赋值给a;③将4赋值给b;④将a,b的和赋值给c;⑤输出c;以上描述算法的方法是()A、自然语言B、流程图C、伪代码D、以上都不是开始x←x+2输出x结束输入x开始x←2输出x结束开始L←L*正整数输出L结束x←x/(x-2)L←53、下列流程图中正确的是