概念

程序框图

用规定的图框、流向线和文字说明把一个算法画出来的图;顺序、条件、循环三种结构靠框怎么连来区分。

教材原文

由例 2 可见,用二分法求方程的近似解,计算量较大,而且是重复相同的步骤。因此,可以通过设计一定的计算程序,借助信息技术完成计算。图 4.5-5 就是表示二分法求方程近似解过程的程序框图。有兴趣的同学,可以在此基础上用有关算法语言编写程序,利用信息技术求方程的近似解。

定义

把一个算法的每一步装进规定形状的图框,再用流向线按执行次序连起来,得到的图叫做这个算法的程序框图(流程图)。

常用的四种框:

框形状装什么
起止框圆角矩形开始 / 结束
输入输出框平行四边形输入 nn / 输出 ii
处理框矩形赋值与计算,如 S=2S+iS=2S+i
判断框菱形一个条件,引出「是 / 否」两条流向线

要点

  • 赋值不是等式。处理框里的 S=2S+iS=2S+i 读作「把右边算出来的值存回 SS」,所以 i=i+1i=i+1 不矛盾。执行完这一框,SS 的旧值就没了。
  • 三种基本结构:一路走到底是顺序;判断框引出两条支路再合流是条件分支;有一条流向线绕回上游才是循环。
  • 循环要先看判断框在哪。判断框在循环体之后(做完再判、条件成立才退出),循环体至少执行一次;判断框在循环体之前(先判再做),有可能一次都不执行。同一组框,判断框位置一挪,答案就变。
  • 循环里通常有两个变量:一个累加器攒结果(本例的 SS),一个计数器数轮数(本例的 ii)。问输出谁、在退出的哪一刻取值,是这类题唯一容易读岔的地方。
  • 循环就是递推。把第 kk 轮结束时累加器的值记作 SkS_k,处理框写的其实是数列的递推公式;输出值 = 让 SkS_k 首次满足退出条件的那个 kk(再按计数器的更新时刻折算)。手推几轮之外,还可以直接解这条递推。

以下内容以本条为前置

共 6 道题考到本条。