• 大小: 31KB
    文件类型: .rar
    金币: 2
    下载: 1 次
    发布日期: 2021-10-24
  • 语言: Java
  • 标签:

资源简介

用java语言编写的递归下降语法分析器用java语言编写的递归下降语法分析器用java语言编写的递归下降语法分析器

资源截图

代码片段和文件信息

package chaper1;

import java.util.*;

public class Grammar {
/**
 * @param args
 */
public Grammar() {

}

public static void main(String[] args) {
// TODO Auto-generated method stub
Grammar grammar = new Grammar();
System.out.println(“please write a string“);
Scanner string = new Scanner(System.in);
String input = string.next();
for (int i = 0; i < input.length(); i++) {
grammar.a[i] = input.charAt(i);
}
grammar.sym = grammar.a[0];
grammar.E();
if (grammar.sym == ‘#‘)
System.out.println(“匹配成功“);
else
System.out.println(“匹配失败“);
}

char sym;
char[] a = new char[50];
int count = 0;

void E1() {
if (sym == ‘a‘) {
getsymbol();
E();
} else if (sym != ‘)‘ && sym != ‘#‘) {
error();
}
}

void E() {
if (sym == ‘a‘ || sym == ‘(‘ || sym == ‘b‘ || sym == ‘^‘) {
T();
E1();
} else
error();

}

void T() {
if (sym == ‘a‘ || sym == ‘(‘ || sym == ‘b‘ || sym == ‘^‘) {
F();
T1();
} else
error();
}

void T1() {
if (sym == ‘a‘ || sym == ‘(‘ || sym == ‘b‘ || sym == ‘^‘) {
T();
} else if (sym == ‘*‘) {
error();
}
}

void F() {
if (sym == ‘a‘ || sym == ‘(‘ || sym == ‘b‘ || sym == ‘^‘) {
P();
F1();
} else
error();
}

void F1() {
if (sym == ‘*‘) {
if (sym == ‘*‘) {
getsymbol();
F1();
}
}
}

void P() {
if (sym == ‘a‘ || sym == ‘b‘ || sym == ‘^‘) {
getsymbol();}
else if (sym == ‘(‘) {
getsymbol();
E();
if(sym==‘)‘){
getsymbol();
}else
error();
}else
error();
}

void error() {
System.out.println(“匹配失败“);
System.exit(0);
}

void getsymbol() {
sym = a[count++];
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      48128  2009-11-06 15:20  语法的分析.doc

     文件        383  2009-10-29 16:29  Grammar\.project

     文件        226  2009-10-29 16:29  Grammar\.classpath

     文件       1766  2009-11-03 10:40  Grammar\chaper1\Grammar.java

     文件       2510  2009-11-06 14:25  Grammar\chaper1\Grammar.class

     目录          0  2009-11-06 15:20  Grammar\chaper1

     目录          0  2009-11-06 15:20  Grammar

----------- ---------  ---------- -----  ----

                53013                    7


评论

共有 条评论

相关资源