版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Chapter
3.结构化程序设计方法(下)谢在鹏EMAIL:
ZXIEHHU@163.COM本讲义修改自叶枫老师去年的讲义知识点回顾:结构化程序设计特征1.2.3.知识点回顾:结构化程序设计的原则1.顺序、选择、循环2.3.4.5.Floyd部分正确性证明--流程图方法Floyd部分正确性证明-例:N
-1s
=
A(i
)i=0Floyd的不变式断言法输入断言输出断言y:一组中间变量
x:输入变量
xy:蕴含符ri(x,y):通过该通路后y的值通过此路径的条件实例1
21
2(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2DB
…
P(x,y)
Tru(1)若y1>y2,gcd(y1,y2)=gcd(y1-y2,y2)(2)若y2>y1,gcd(y1,y2)=gcd(y1,y2
-y1)(3)若y=y,gcd(y
,y
)=y1=y2ey1fi
zC…y(x,z)GFalseETrue开始A
…
j(x)y1=y2Falsey1>y2结束设x1,x2是正整数,求他们的最大公约数z=gcd(x1,x2)。我们知道,对于任意正整数y1,y2,有下列关系:(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2y1fi
zC…y(x,z)DB
…
P(x,y)
TrueGFalseETrue开始A
…
j(x)y1=y2Falsey1>y2结束(1)建立断言(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2A
…
j(x)y1fi
zC…y(x,z)DB
…
P(x,y)
TrueGFalseETrue开始y1=y2Falsey1>y2结束通路1:A-->B所以(2)建立检验条件-1(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2A
…
j(x)y1fi
zC…y(x,z)DB
…
P(x,y)
TrueGFalseETrue开始y1=y2Falsey1>y2结束通路条件(2)建立检验条件-2所以检验条件为:(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2A
…
j(x)y1fi
zC…y(x,z)DB
…
P(x,y)
TrueGFalseETrue开始y1=y2Falsey1>y2结束通路条件通路2:B-->D-->B通路后的y值(2)建立检验条件-3(x1,x2)fi
(y1,y2)y1-y2fi
y1y2-y1fi
y2A
…
j(x)y1fi
zC…y(x,z)DB
…
P(x,y)
TrueGFalseETrue开始y1=y2Falsey1>y2结束(3)
证明检验条件-1通路1:通路2:(3)
证明检验条件-2通路3:通路4:不变式断言法实例-2n2<x<(n+1)2(0,0,1)->(y1,y2,y3)y2+y3->y2y1->zABDx
Z
=
开始C(y1+1,y3+2)->(y1,y3)结束y2<x(0,0,1)->(y1,y2,y3)y2+y3->y2y1->zADC开始(y1+1,2*y1+1)->(y1,y3)结束By2<xy1=n;y3=2*y1+1;y2=
(y1+1)2;通路1:A-->B(2)建立检验条件-1(0,0,1)->(y1,y2,y3)y2+y3->y2y1->zABDC开始(y1+1,2*y1+1)->(y1,y3)结束y2<xy1=n;y3=2*y1+1;y2=
(y1+1)2;(2)建立检验条件-2通路2:B-->D-->B(0,0,1)->(y1,y2,y3)y2+y3->y2y1->zABD开始C(y1+1,2*y1+1)->(y1,y3)结束y2<xy1=n;y3=2*y1+1;y2=
(y1+1)2;(2)建立检验条件-2通路2:B-->C(0,0,1)->(y1,y2,y3)y2+y3->y2y1->zABD开始C(y1+1,2*y1+1)->(y1,y3)结束y2<xy1=n;y3=2*y1+1;y2=
(y1+1)2;(3)
证明检验条件-1通路1:通路2:(3)
证明检验条件-2通路3:良序集方法证明程序终止性实例
x
(0,0,1)
(y1,y2,y3)(y1+1,y3+2)(y1,y3)y1
zB’y2+y3
y2B…
p(x,y)y2<x开始结束Dy2
<xy3>0终止表达式
x-y2循环结构终止的条件表达式(0,0,1)
(y1,y2,y3)y2+y3
y2(y1+1,y3+2)(y1,y3)y1
zB’
…q(x,y1,y2,y3)A…φ(x)B…
p(x,y)y2<x开始结束D终止表达式(0,0,1)
(y1,y2,y3)y2+y3
y2(y1+1,y3+2)(y1,y3)y1
zB’
…q(x,y1,y2,y3)A…φ(x)B…
p(x,y)y2<x开始结束D终止表达式y2
<xy3>0(0,0,1)
(y1,y2,y3)(y1+1,y3+2)(y1,y3)y1
zB’
…q(x,y1,y2,y3)y2+y3
y2B…
p(x,y)A…φ(x)2y
<x开始结束D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026中铁华铁工程设计集团有限公司区域指挥部招聘备考题库含答案详解(典型题)
- 2026重庆大学附属江津医院医院自聘岗位招聘16人备考题库附答案详解(考试直接用)
- 2026福建省寿宁县教育局补充招聘紧缺急需及高层次教师5人备考题库含答案详解(黄金题型)
- 2026中国科学院广州地球化学研究所党务综合管理岗招聘1人备考题库及参考答案详解1套
- 2026上海上海文化广场招聘工作人员备考题库及一套答案详解
- 2026年合肥市长江路第三小学海棠花园校区招聘教师备考题库附答案详解(完整版)
- 2026年4月广西百色市田阳区城镇公益性岗位人员招聘3人备考题库及答案详解(网校专用)
- 2026江苏南通古港文化旅游发展有限公司招聘劳务派遣人员5人备考题库含答案详解(夺分金卷)
- 2026深圳联通春季校园招聘备考题库及答案详解(典优)
- 2026浙江台州市荣远客运有限公司招聘备考题库及答案详解(夺冠)
- 2026年血站上岗证测试卷【巩固】附答案详解
- 《年历、月历中的信息》教案-2025-2026学年苏教版小学三年级数学下册
- 消防大队保密工作制度
- 2026年国家药品监督管理局药品和医疗器械审评检查京津冀分中心、华中分中心、西南分中心公开招聘编外人员122名(第一批)笔试参考试题及答案解析
- 2026年春教科版(新教材)小学科学三年级下册(全册)知识点复习要点梳理
- 中国脑外伤康复指南(2025版)
- 2026校招:华夏银行笔试题及答案
- 2026年吉林电子信息职业技术学院单招职业技能考试题库带答案详解(预热题)
- 医美考核制度模板
- 2026秋招:东方航空笔试题及答案
- 2025年北京市西城区中考化学模拟卷
评论
0/150
提交评论