#P1170. 程序语言
程序语言
题目描述
面条老师创造了一种新的程序语言NOHTYP
。
这个程序语言支持下列操作:
GET xxx
:定义一个整型变量xxx,其中xxx为变量名称,仅由小写字符构成。初始时xxx的值为0。若定义时该变量已经存在进行报错。xxx = <value>
:将整型变量xxx赋值为<value>
,其中<value>
是一个整数常量;若该变量不存在进行报错。xxx = yyy
:将整型变量yyy的值赋值给xxx;若xxx或yyy变量不存在均进行报错。DEL xxx
:删除整型变量xxx,删去后该变量不存在;若删除时该变量不存在进行报错。QUERY xxx
:查询整型变量xxx的值,若存在则打印一行该变量的值;若查询时该变量不存在进行报错。
报错格式为:LINE <value> ERROR
,其中<value>
为最早发生报错的行编号。从1开始计数。
下面是两个例子:
- 例1
GET a
GET b
a = 5
QUERY a
b = a
QUERY b
DEL a
QUERY b
该程序无报错。会输出
5
5
5
- 例2
GET a
GET b
a = 5
QUERY a
b = a
QUERY b
DEL a
QUERY a
DEL a
该程序最早出现错误位置为第八行,因此会报错:
LINE 8 ERROR
输入格式
第一行一个整数,表示程序段长度。
接下来行每行一个语句表示程序段。保证程序段均符合上述规定的语法(但不保证能正常运行)。
其中变量名保证仅包含小写字符,保证所有变量名长度不会超过10。
输出格式
若无报错,输出程序的运行结果;
若有报错,输出报错信息。仅报错第一个发生错误的语句行。
8
GET a
GET b
a = 5
QUERY a
b = a
QUERY b
DEL a
QUERY b
5
5
5
9
GET a
GET b
a = 5
QUERY a
b = a
QUERY b
DEL a
QUERY a
DEL a
LINE 8 ERROR
数据规模与约定
每组数据点5分,共20组数据。
数据点编号 | 程序段行数范围 | 其他说明 |
---|---|---|
#1~#3 | 性质A,性质B,性质C | |
#4~#6 | 性质A,性质B | |
#7~#10 | 性质B | |
#11~#14 | 性质C | |
#15~#20 | 无 |
- 性质A:变量名长度为1。
- 性质B:无DEL语句。
- 性质C:保证程序不会报错。