admin 管理员组文章数量: 1184232
2024年12月31日发(作者:pythonpip安装)
第五章
详细设计
目标:确定应该怎样具体地实
现所要求的系统
1
经过这个阶段的设计工作,应该得出
对目标系统的精确描述,从而在编码
阶段可以把这个描述直接翻译成用某
种程序设计语言书写的程序。
详细设计阶段的任务还不是具体地编写
程序,而是要设计出程序的“蓝图”,以
后程序员将根据这个蓝图写出实际的程
序代码。因此,详细设计的结果基本上
决定了最终的程序代码的质量。
2
衡量程序的质量
不仅逻辑正确,性能是否满足要
求,更主要的是看其是否容易理
解和阅读。
§5.1 结构程序设计
产生的背景
3
结构程序设计的概念最早由ra
提出。1965年他在一次会议上指出:“可
以从高级语言中取消GO TO语句”,“程
序的质量与程序中所包含的GO TO 语句
的数量成反比”。1966年Bohm和
Jacopini证明了,只用3种基本的控制结
构就能实现任何单入口单出口的程序。
结构程序设计的经典定义
如果一个程序的代码块仅仅通过
顺序、选择和循环这三种基本控
制结构进行连接,并且每个代码
块只有一个入口和一个出口,则
称这个程序是结构化的。
4
结构程序设计的定义
尽可能少用GO TO语句的程序设计
方法,最好仅在检测出错误时才使
用GO TO 语句,而且应该总是使用
前向GO TO语句。
三种基本结构
A
Exp
B
AB
(a)
(b)
5
exp
F
A
T
exp
T
F
A
(c)
A
CASE
DO
F
exp
case1case2…case n
T
(d)
6
¾
有时需要立即从循环(甚至嵌套的循
环)中转移出来,如果允许使用
LEAVE(或BREAK)结构,则不仅方
便而且会使效率提高很多。
¾
LEAVE或BREAK结构实质上是受
限制的GO TO 语句,用于转移到循
环结构后面的语句。
¾
经典的结构程序设计:只允许使用顺
序、IF-THEN-ELSE型分支和DO-
WHILE型循环。
¾
扩展的结构程序设计:除上述3种基本
控制结构之外,还允许使用DO-CASE
型多分支结构和DO-UNTIL型循环结
构。
¾
修正的结构程序设计:再加上允许使用
LEAVE(或BREAK)结构。
7
结构程序设计的好处
1)自顶向下逐步求精,符合人类普遍规律。
2)清晰的层次结构,易读,易理解。
3)单入/出口结构易保证正确性,易诊断错误
并改正
4)控制结构有确定模式,代码只限于几种直
截了当的方式,易于测试。
5)可重用代码量最大
6)逻辑结构清晰,有利于正确性证明
具体实现结构化设计中
碰到的几个问题
8
问题之一:是否能够将问题解的任何算法都
表示为结构化构造?
1966年由Boehm Jacopini提出,并经Mills
进一步发展,在理论上证明了问题解的任
何算法都可以表示为结构化的构造。其理
论可归纳为:
定理一:假如不增加辅助变量、不
增加额外计算或不改变程序的执行
顺序,则必然存在不能用if-while
表示的构造。
9
定理二:在定理一的假设条件下,
if-while构造的充分必要条件是:
该构造不包含两个(或两个以
上)出口的循环。
定理三:若允许增加辅助变量、或增
加额外计算、或改变程序的执行顺
序,问题解的任何算法都可以表示
为结构化的构造。
10
非结构化流程图
START
S
F
P2
F
P1
T
T
2
1
对
START
应
的
S
结
构
T
P1 and P2
化
F
流
F
程
P1
T
图
21
11
START
START
S
F
S
P2
F
P1
T
T
1
T
2
P1 and P2
F
F
P1
T
21
非结构化流程
12
增
加
额
外
计
算
增加辅助变量
B
13
5.2 人机界面设计
人机界面设计是接口设计的一个重
要的组成部分。对于交互式系统来
说,人机界面设计和数据设计、体
系结构设计及过程设计一样重要。
5.2.1 设计问题
¾
系统响应时间
¾
用户帮助设施
¾
出错信息处理
¾
命令交互
14
1. 系统响应时间
版权声明:本文标题:Swe5 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1735740502a1687075.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
更多相关文章
快速上手TP-LINK150M无线USB网卡免驱版:wifiautoinstallsetup安装包的简便安装流程
`声明Copyrighte2018普联技术有限公司版权所有,保留所有权利未经普联技术有限公司明确书面许可,任何单位或个人不得擅自仿制、复制、誉抄或转译本书部分或全部内容。不得以任何形式或任何方式(电子、机械、影
当你的双系统遭遇了删除的厄运,这里有绝地翻盘的大招!
引言 “手贱”是科技进步的第一动力——至少在我的电脑上是这样。 前几天,我决定给硬盘来一次“断舍离”。看着那块装着老Windows 10系统的F盘,心想既然主力系统已经是Windows 11了,留着它也是浪费空间。于是
好友一碰就消失?揭秘QQ自动退出的神秘原因
曾经遇到过该问题,以为是偶然或是RP问题,昨天有同事也出现了类似症状,觉得大概与RP无关啦,所以写下比较简单的但有效的解决方法。下面描述一下症状:针对某个QQ号码,选择某个特定的好友,准备输入消息的时候,该QQ号会自动关闭;同个
Ubuntu Linux新手必学:解决QQ自动关闭的技巧
原文地址: 前几天每次开机启动电脑,Ubuntu 9.10 linux qq 老是自动退出,QQ登陆了还没几分钟呢,刚想聊几句天的,悄无声息的QQ自动关闭了。 然后今天也奇怪了,QQ登陆后不会自动退出了,而且可以同时登
Ubuntu系统下的QQ问题大汇总:一键解决自动关闭!
每次开机启动电脑,Ubuntu 10 linux qq 老是自动退出,QQ登陆了还没几分钟呢,刚想聊几句天的,悄无声息的QQ自动关闭了。 只要修改一下qq配置文件(usrbinqq)就可以了。 具体如下。
192.168.0.127之谜:揭秘网络背后的精彩故事
首先得明白 192.168.0.1是个 IP地址,更细一点的话,属于 C类型的,后面的 27则表示 网络号的长度
如何利用192.168.1.1优化你的家庭网络体验
虽然前面小编也发布过关于的相关信息,但是都是解释相关的问题的,没有好好介绍关于的信息,今天小编星期八就给大家介绍一下的详细信息! 是什么? 192.168.0.1属于IP地址的
192.168.0.1隐藏的路由器入口,教你快速进入并优化网络!
有不少的用户在反馈,说在的时候,登录入口打不开找不到,从而无法对进行设置,问我应该怎么办? 根据鸿哥的经验来看,出现无法打开的登录入口问题,绝大数情况下是用户自己操作有误引起的,极少数情况
一文详解:轻松进入192.168.1.1路由器控制台
快速体验打开 输入框输入如下内容 帮我开发一个路由器登录页面模拟系统,用于展示常见路由器的管理界面登录流程。系统交互细节:1.输入正确IP地址跳转登录页 2.输入错误地址提示更正 3.忘记密码时显示重置指
192.168.0.1与192.168.1.1:家庭网络地址的细微区别
哈哈,这个问题问得真好!让我来给你讲讲192.168.0.1和192.168.1.1这两个"网络小管家"的区别吧~ 其实啊,它们就像是两个不同性格的邻居,虽然住在一个大社区(192.168.0.0-192.168
告别重装系统,用DISM轻松解决电脑问题
介绍了解: DISM(部署映像服务和管理)是三种 Windows 诊断工具中最强大的。当遇到频繁的崩溃、冻结和错误,或者 SFC 要么无法修复您的系统文件,或者根本无法运行时,可以使用该工具。 相连文章: 修复
Dism助力:快速上手实现Flash Player无缝安装与更新
相关文章推荐:Windows ADK 下载地址: 命令示例:Gimagex图形化演示:以下命令由DISMGUI生成,原汁原味1.首次备份镜像【Captu
一扫系统故障,畅享Flash内容新体验!
在win10系统中,当系统出现文件受损或丢失后,可以使用DISM工具进行联机修复:1、使用管理员运行CMD: DISM Online Cleanup-image RestoreHealth命令会联机下载并修
让Dism++帮您驾驭Windows系统,轻松优化
简介:Dism++是一款先进的系统维护工具,专注于清理电脑垃圾、释放内存,提供全面的系统优化解决方案。最新版本Dism++10.1.1000.100_2d2bf466baca088c4b35248f5a7316f4e00cac0b特别
Dism++:让你的电脑焕然一新,快速提升性能,告别延迟!
无需全家桶,不占内存,5MB的绿色工具让你的Windows流畅如新!在Windows系统长期使用过程中,系统臃肿、运行卡顿、C盘爆满等问题困扰着绝大多数用户。面对这些痛点,很多人的第一反应是重装系统,但今天我将介绍一款更
告别Flash播放器错误,用DISM轻松搞定
在win10系统中,当系统出现文件受损或丢失后,可以使用DISM工具进行联机修复:1、使用管理员运行CMD: DISM Online Cleanup-image RestoreHealth命令会联机下载并修
Dism++:你的日常维护与系统优化好帮手
简介:Dism++是一款先进的系统维护工具,专注于清理电脑垃圾、释放内存,提供全面的系统优化解决方案。最新版本Dism++10.1.1000.100_2d2bf466baca088c4b35248f5a7316f4e00cac0b特别
Linux备份与恢复必修课:SWF文件安全策略从入门到精通
在linux工作,系统备份是很有必要的,养成系统备份的好习惯会提高你的工作效率。下面我就简单的说一下:1.备份系统首先成为root用户:sudo su然后进入文件系统的根目录
Ubuntu系统维护秘籍:备份步骤详解,保护你的劳动成果!
记录ubuntu的系统备份方法: 测试平台:ubuntu16.04,已安装nvidia384 cuda opencv protobuf等等运算库。使用ubuntu时经常需要重新安装电脑,和windows不一样的
SWF文件备份失败?这些步骤让你轻松搞定
数据备份与恢复、系统备份与恢复 一、数据备份与恢复 1、什么是备份 备份,即另外准备一 – 为应付文件、数据丢失或损坏等可能出现的意外情况,将电子计算机存储设备中的数据复制到大容量存储设备中 2
发表评论