要求分析和规格详细说明.docVIP

  • 2
  • 0
  • 约1.92万字
  • 约 23页
  • 2021-03-26 发布于广东
  • 举报
一、要求分析和规格说明 1、PL语言分析 相对于PASCAL和PS语言而言,PL语言是一种定义非常狭窄的小的程序设 计语言,它的简单类型仅有整型(integer)和布尔型(Boolean),过程定义不能有 参数, a)符号: 保留字: Boolean Proc array begin call const do end false fi if integer od read skip true write 专有符号: ?*:=,/ = [ ( v ? \ ?| + )] ; [] 数字 数字是十进制整数,范围从-32767到32767o 标识符 由字母开头的,后跟0个或多个字母或数字组成。 数据类型: PL具有有两种基木数据类型,整型integer和布尔类型Boolean0结 构类型只有数组,不可以定义自己新的数据类型。 程序结构: 得到一个PL程序是v分程序后跟有一个句号(圆点)的程序。分程序有 定义部分DP和语句部分SP组成:begin DP SP end; 分程序描述了在命名对象上的操作。对象是一个常量、变量或过 程(类型由保留字表示)。每个对象有定义说明。不存在标准对象。作 用域规则与PS相同。分程序内每个操作产生其内定义的变量的一个新 实例。分程序的定义部分是后跟有分号的定义的序列:DI; D2;… Dn; 例如: begin const a = 1; $常量部分 integer b; $变量定义 b:二10; $数值输出 end. 常量定义 一般形式:const v常量名〉二v常量〉 常量定义说明常量的名字:const n=10() 变量定义 一般形式:V类型符〉v变量表> 或:V类型符> array v变量表〉[常量] 前者是定义一般变量,后者是定义数组变量。数组的常量必须是自然 数1,2,……,no它代表要定义的数组的元素个数,而数组的下标是 从 1 开始的。例:integer a,b,c; integer A [10]; $定义有10个元素的数组变量A PL遵循变量先定义后使用的规则,而且在同一个作用域范围内不允许 有相同的变量名。但不同作用域变量名可以相同。也不能用PL的保留 字做变量名。 过程定义说明 一般形式:Proc v过程名> v分程序> PL的过程遵循先定义后使用的规则,而且在同一个作用域范围内 不允许有相同的过程名。但不同作用域过程名可以相同。也不能用PL 的保留字做过程名。 Proc write $错误,这是PL的标准过程,不能重定义 PL的语句 空语句: —般形式:skip; 它表示什么也不做。 读语句 一般形式:read v变量访问表〉; 其中变量访问表:v变量访问>{,v变量访问>} 它是PL的标准过程,也是唯一的一条输入语句。表示输入一个或多个 整数并赋值给相应变量。例:read a, b, c; 写语句 —般形式:write v表达式表〉; 其中表达式表:v表达式>{,v表达式表>} 它是PL的标准过程,也是唯一的一条输出语句。表示输出一个或多个 由表达式定义的整数。 例:write a, b, c*d, 100; 赋值语句 一般形式:v变量访问表〉:=v表达式表〉; PL的赋值语句具有并行赋值的特点。 例:a, b := 1, x+y; 它表示依次把右边的表达式的值分别赋给左边对应的变量。上例就是 把1赋给变量a,把x+y的值赋给变量bo 过程语句 一般形式:call v过程名〉; 它表示调用用户自己定义过程,PL规定过程必须是先定义后使用的。 if语句 一般形式:if v警戒命令表〉fi; 其中警戒命令表:V警戒命令{[]警戒命令 } 警戒命令: V表达式 - V语句部分〉 PL依次检测各警戒命令,如果表达式的值为true则执行相应的语句部 分,然后忽略其余警戒命令,执行if后面的语句。如果所有表达式的 值均为false这发出“if语句逻辑错误”的提示并终止程序的执行。 例:讦 ab - t := a;[] ab - t := b; fi; do语句 一般形式:do v警戒命令表〉do; 其中警戒命令表:v警戒命令{[]警戒命令} 警戒命令: v表达式〉- v语句部分〉 PL依次检测各警戒命令,如果表达式的值为true则执行相应的语句部 分,然后重新检测各警戒命令,直到所有表达式的值均为false才继续 执行do后面的语句。 例:do i 100 - read i; od 程序注释 PL的注释以“$”字符开头,直到本行末为止。 例如: begin 1:=90; $这里也是程序的注释 end. 运算 PL有下列四种运算与或运算: :与运算,只有当两个布尔值均为true结果才为true I :或运算,只要其中一个布尔值为true结果就为true 关系运算: PL的关系运算和关系运算

文档评论(0)

1亿VIP精品文档

相关文档