Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

http://www.mediafire.com/download/tbb90fla9dn6mnn/SyntaxAnalyzer.java Test files

ID: 670264 • Letter: H

Question

http://www.mediafire.com/download/tbb90fla9dn6mnn/SyntaxAnalyzer.java

Test files:

http://www.mediafire.com/download/1npr52lgoa5sn6d/Test1.mphp

http://www.mediafire.com/download/l5p083kydaau7cs/Test2.mphp

http://www.mediafire.com/download/j6yldlz9x2r91ju/Test3.mphp

http://www.mediafire.com/download/14t3jd78c8o72dp/Test4.mphp

Can you post answer as a link:

Progranm ?php Block ?> funcDef Statements Statements Statement function Identifie Identifier , Identifier) 1 Statements return ListExpr if Expression Statement else Statement] I while Expression Statement l foreachIdentifier as Identifier) Statement I Identifier [ [ [ Expression ] ] ] = ListExpr ; l array push Identifier AddExpr I print AddExpr Statement Statement ( Statement ) Expression - AndExpr AndExpr ) RelExpr &&RelExpr; ! ListExpr [ RelOper ListExpr 1 RelExpr RelOper ListExpr AddExpir AddOper MulExpir MulOper PrefixExpr SimpleExpr AddExpr array) MulExpr f Addoper MulExpr PrefixExpr MulOper PrefixExpr ) 1 [ Addoper SimpleExpr Literal Expression ) l Identifier l Identifier l arra AddExpr 1 AddExpr , AddExpr ) array PoPIdentifir) integerN Literal

Explanation / Answer

// Recursive descent Syntax Analyzer for Micro PHP:
class SyntAnalyz {
   String lexer, token, symbol;
   String SynAnlz(String []token)
       if ( symbol != token)   SynAnlz(symbol);
}

public class SyntaxAnalyzerCaller {


  
public static void main(String []args){

     String token, lexer, symbol, received, factor;
token = SyntaxAnalyzer.getToken();
// call the class member function to get the token being parsed:

   SyntAnalyz sa = new SyntAnalyz ();
   sa.primary();
   sa.SynAnlz(token);
   received = sa.program();  
   if (received == sa.declarations())
       sa.statements();
   else
       sa.statement();
   sa.expression();
   if (received == sa.conjunction() )
       sa.equality();
   else
       sa.relation();
   sa.addition();
   term = sa.term();
   factor = sa.factor();


     System.out.println("Syntax Analyzer");
   
}


}