摘要: 写出求值的一个算法. 算法一: S1 先求.得到, S2 将S1得到的结果再乘.得到, S3 将S2得到的结果再乘.得到, S4 将S3得到的结果再乘.得到最后的结果., [思考]如果一直乘到100.上述算法有何弊端.有通用性吗? 算法二: S1 设一个变量T←1, S2 设另一个变量为i←2, S3 T←T×i { 将T×i的结果仍放在变量T中 }, S4 i←i+1 {i的值增加1}, S5 如果i不大于5.转S3.否则输出T.算法结束. [比较] 算法二与算法一相比有何优越性? 这个方法可以在条件限制中加入任意的值来.比如也可以用同样的程序来执行.只要修改一下限制条件即可. 流程图: [思考]将算法二作如下修改.注意与算法二的区别. 算法三: S1 设一个变量T=1 S2 设另一个变量为i=2 S3 如果i不大于5.T←T×i .执行S4.否则转到S5 S4 i←i+1.重复S3 S5 输出T 分析:在算法三中.执行S3.S4是有条件的.当i小于等于5时才可以. 流程图: 上述循环结构用示意图表示为: [总结]图A中.循环体一直执行.直到条件成立时退出循环.这种循环称为直到型循环.图B中.当条件成立时循环体才执行.这种循环称为当型循环. [经典范例] 例1 设计一个计算10个数的平均数的算法. [分析]我们用一个循环依次输入10个数.再用一个变量存放数的累加和.在求出10个数的总和后.除以10.就得到这10个数的平均数. [解]算法如下: S1 S←0 S2 I←1 S3 输入G {输入一个数} S4 S←S+G {求S+G.其和仍放在S中} S5 I←I+1 S6 如果I不大于10.转S3 {如果I>10不成立.开始循环} S7 A←S/10 {将平均数S/10存放到A中} S8 输出A 流程图: [追踪训练]

网址:http://m.1010jiajiao.com/timu_id_2503683[举报]

违法和不良信息举报电话:027-86699610 举报邮箱:58377363@163.com

精英家教网