[f;g] = {(x,y)| y = g ·f(x)} [if-then] = {(x,y)|p(x)y=f(x)|¬p(x)y=x} [if-then-else] = {(x,y)| p(x)y=f(x)|¬p(x)y=g(x)}
二、结构化定理
2. 七种基本程序的程序函数(续)
[while-do] = {(x,y)|k0 ((j:0<=j<k:p ·f j(x))| ¬p ·f k(x)y= f k(x))}
f 函数节点:只有一条入口线和一条出口
线,一般与赋值语句相对应。
谓词节点:有一条入口线和两条出口线,
p
它不改变程序的数据项的值。
汇点:有两条入口线和一条出口线,它
不执行任何运算,只起到收集出口线的 作用。
流程图程序举例
流程图程序举例:
g q
p f
正规程序
4. 正规程序
定义:满足以下两个条件的流程图程序称为正规程 序。条件:
理解和修改 程序结构化的一个主要功能是使得正确性证明容易实现 允许在设计过程中的每一步验证其正确性,即自动导致
自我说明与自我捍卫的程序风格 是讨论如何将任何大规模的复杂的流程图程序转换成一
种标准形式,使得它们用几种标准的控制结构, 通过重复 和嵌套来表示.
结构程序设计的综合描述
结构程序设计的综合描述: 结构程序设计是一种进行程序设计的原则和方法, 按照这种原则和方法设计出的程序的特点是:结 构清晰、易阅读、易修改、易验证。 结构程序设计语言:按照结构程序设计的要求设 计出的程序设计语言称为结构程序设计语言。 结构化程序:利用结构程序设计语言,或按照结 构程序设计的思想编制的程序称为“结构化程 序” 。
例:
f
g