资源简介
编译原理实验四:正规式到正规文法的转换,zip文件里包含实验报告和源代码两部分。
代码片段和文件信息
#include
#include
using namespace std;
#define max 50
int NONE=1;
int RELEFT=1;
string stringsnoendend;//非终结符与终结符存储
string r;//正规式
int m=1;//记录产生式的个数
struct Chomsky//正规文法结构存储
{
string left;
string right;
};
void apart(Chomsky *pint i) //分开产生式左右部
{
int j;
for(j=0;j if(strings[j]==‘-‘)
{
p[i].left=strings.substr(0j);
p[i].right=strings.substr(j+1strings.length()-j);
}
}
void VNVT(Chomsky *p)//求VN和VT
{
int ij;
for(i=0;i {
for(j=0;j<(int)p[i].left.length();j++)
{
if((p[i].left[j]>=‘A‘&&p[i].left[j]<=‘Z‘))//非终结符判断
{
if(noend.find(p[i].left[j])>100)
noend+=p[i].left[j];
}
else
{
if(end.find(p[i].left[j])>100)
end+=p[i].left[j];
}
}
for(j=0;j<(int)p[i].right.length();j++)
{
if(!(p[i].right[j]>=‘A‘&&p[i].right[j]<=‘Z‘))//终结符判断
{
if(end.find(p[i].right[j])>100)
end+=p[i].right[j];
}
else
{
if(noend.find(p[i].right[j])>100)
noend+=p[i].right[j];
}
}
}
}
void print(Chomsky *p)//输出四元组
{
int i;
cout< for(i=0;i cout<“<
}
void change(string q)//正规式到正规文法的转换函数
{
/*char S;//文法开始符号
p[0].left=S;//将正规式r重写为S->r形式存储在正规文法的第一条
p[0].right=q;
int n;//记录文法右边的长度
n=p[0].right.length;
for(int i=0;i {
if(p[0].right.[i]==)
}*/
}
void main()
{
int ij;
cout<<“....................编译原理实验四:正规式到正规文法的转换....................“< Chomsky *p=new Chomsky[max];
cout<<“请输入须转换的正规式:“< cin>>r;
cout<<“r=“< change(r);
cout<<“转换后的正规文法是:“< print(p);//输出最后的正规文法
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1969 2014-05-07 17:33 4.cpp
文件 169009 2015-12-13 20:44 编译原理实验四:正规式到正规文法的转换.doc
相关资源
- 编译原理实验七:LL(1)文法的判断
- 编译原理实验三:正规文法到正规式
- 程序设计语言编译原理课后习题答案
- 编译原理-LL1文法的判定
- 东北大学软件学院编译原理
- 构造识别规范句型活前缀DFA的程序设
- 计算机编译原理第三版张幸儿课后答
- 计算机编译原理文法压缩
- 编译作业2.3.jpg
- 预备工作1——了解你的编译器
- 太原理工大学编译原理实验
- 编译原理实验 中间代码优化 代码 报
- 编译原理龙书第二版答案看评论酌情
- 编译原理习题答案,1-8章龙书第二版
- 合肥工业大学编译原理课程设计报告
- 简单文法压缩程序可对文法做等价压
- 编译原理三级项目pl0扩展
- 编译原理课后练习习题
- 编译原理考点,编译原理考点整理。
- 2018燕山大学软件工程编译原理
- 编译原理实验-计算器-完成品
- 编译原理实验 C0编译器的 设计与实现
- 编译原理陈火旺第三版课后练习答案
- 北邮编译原理课程设计
- 西农编译原理实习报告
- 广工2015编译原理实验报告
- 程序设计语言编译原理第三版-成火旺
- 华中科技大学编译原理实验yacc源码
- 编译原理识别活缀的DFA
- 编译原理实验 计算器 语法树 逆波兰
评论
共有 条评论