9三.根据后面给出“卡片的分类及统计”项目说明,完成下列工作:
(1)用Jackson图表示输入与输出数据结构,找出它们之间的对应单元;
(2)画出用Jackson图表示的程序结构;
(3)列出程序所需用的操作,并加到上一步画出的程序结构图上;
(4)用Jackson伪代码写出程序的过程表示。
输入卡片分析程序。一叠输入卡片按内容分为K1、K2、K3三类,卡片的排列规则是:以K1卡始,以K2卡终。起始卡之前属前置部分,不含K1卡;起始卡与终了卡之间属分批部分,不含K2卡。如图:
试用Jackson方法编一程序,要求依次完成下列分析工作:
-----统计起始卡前卡片的张数,存入A;
-----打印起始卡的内容;
-----统计起始卡后出现的K1卡和K3卡总批数,存入B;
-----统计起始卡后出现的K1卡的张数,存入C;
-----统计起始卡后出现的K3卡的批数,存入D;
-----打印终了卡的内容;
-----打印A、B、C、D四个统计值。 10
第六章 习题参考答案
1. 编码的任务?
使用选定的程序设计语言,把模块的过程性描述翻译为用语言书写的源程序(源代码)。 2. 对源程序基本要求?
源程序要求:正确可靠、简明清晰、效率高。
(1) 源程序的正确性是对程序质量的最基本要求;
(2) 源程序的简明清晰,便于验证源代码和模块规格说明的一致性,容易进行测试和维护;
(3) 对于大多数模块,编码时应该把简明清晰放在第一位;
(4) 除了编码阶段产生源代码外,在测试阶段也需要编写一些测试程序,用于对软件的测试。
3. 程序设计语言的特点?
(1) 名字说明:程序中使用对象的名字,能为编译程序所检查和识别;
(2) 类型说明:定义对象的类型,确定该对象的使用方式;
(3) 初始化:为变量提供适当的初始值或由系统给变量赋一特殊的表明未初始化的值;
(4) 对象的局部性:程序中真正需要的那部分才能访问的对象;
(5) 程序模块:控制程序对象的名字;
(6) 循环控制结构:如FOR语句、WHILE-DO语句、REPEAT-UNTIL语句等;
(7) 分支控制结构:如IF语句、CASE语句等;
(8) 异常处理:为程序运行过程中发生的错误和意外事件提供检测和处理上的帮助;
(9) 独立编译:能分别编译各个程序单元。
4. 选择程序设计语言需要考虑的因素?
(1) 选择用户熟悉、便于用户维护的语言。
(2) 选择目标系统的环境中可以提供的编译程序所能选用的语言。
(3) 选择可以得到的软件工具,能支持程序开发中可以利用的语言。