实验一:Chomsky文法类型判断(2)

2019-04-16 23:21

实验结果:

实验源代码如下:

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;;

public class Chomsky { String[] left=new String[10]; //产生式左部 String[] right=new String[10]; //产生式右部 String Vn=new String(); //非终结符集合 String Vt=new String(); //终结符集合 int[] type=new int[20]; //标记文法的类型 char start; //开始符 int count; //产生式的个数 boolean mark1=true,mark2=true; public void GetIn(BufferedReader f) //输入方法 { try

6

{

boolean mark=true;

System.out.println(\实验一:Chomsky文法类型判断||\\n\System.out.println(\请输入非终结符集Vn:\Vn=f.readLine();

System.out.println(\请输入终结符集Vt:\Vt=f.readLine(); String V=Vn+Vt;

System.out.println(\请输入产生式的个数:\String s=f.readLine(); count=Integer.parseInt(s);

for(int i=0;i

if(mark==false) { System.out.println(\产生式左部皆为终结符号,输入非法!\ System.exit(0); }

for(int i=0;i

7

{ if((IsVh(right[i],V))==false) { System.out.println(\输入非法!\ System.exit(0); } } } System.out.println(\请输入开始符:\ start=(char)f.read(); for(int i=0;i

public void OutPut() //输出方法 {

8

System.out.println(\生成的文法G为:\ System.out.print(\ for(int i=0;i

public void Recognize() //判别方法 { for(int i=0;i=left[i].length()) //1型文法判别条件 { type[i]=1; if(IsVh(left[i],Vn)==true&&(left[i].length()==1)) //2型文法判别条件 { type[i]=2; if(right[i].length()==1&&IsChar(right[i].charAt(0),Vt)) type[i]=3; if(right[i].length()==2&&mark1==true) { if(IsChar(right[i].charAt(0),Vt)&&IsChar(right[i].charAt(1),Vn)) type[i]=3; else

9

type[i]=2; mark2=false; } if(right[i].length()==2&&mark2==true) { if(IsChar(right[i].charAt(0),Vn)&&IsChar(right[i].charAt(1),Vt)) type[i]=3; else type[i]=2; mark1=false; } } else type[i]=1; } else type[i]=0; } int min=type[0]; for(int i=1;i

public boolean IsVh(String str,String Vh) //判断字符串是否在某个集合中 { for(int j=0;j

public boolean IsChar(char c,String Vh) //判断字符是否在某个集合中 {

10

}

for(int k=0;k

public static void main(String args[]) { Chomsky Cho=new Chomsky(); BufferedReader f=new BufferedReader(new InputStreamReader (System.in)); Cho.GetIn(f); }

11


实验一:Chomsky文法类型判断(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高压变频器技术规格书 - 副本

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: