Question
CAN SOMEONE PLEASE HELP ME WITH THIS!!!! Build a compiler for Jack -- a modern, object-based, Java-like language. The compiler construction spans two projects: 10
CAN SOMEONE PLEASE HELP ME WITH THIS!!!!
Build a compiler for Jack -- a modern, object-based, Java-like language. The compiler construction spans two projects: 10 (Syntax Analysis) and 11 (Code Generation). In this project we build a syntax analyzer that parses programs according to the Jack grammar, producing an XML file that reflects the program's structure.
main txt
// This file is part of the materials accompanying the book
// "The Elements of Computing Systems" by Nisan and Schocken,
// MIT Press. Book site: www.idc.ac.il/tecs
// File name: projects/10/ArrayTest/Main.jack
/** Computes the average of a sequence of integers. */
class Main {
function void main() {
var Array a;
var int length;
var int i, sum;
let length = Keyboard.readInt("HOW MANY NUMBERS? ");
let a = Array.new(length);
let i = 0;
while (i < length) {
let a[i] = Keyboard.readInt("ENTER THE NEXT NUMBER: ");
let i = i + 1;
}
let i = 0;
let sum = 0;
while (i < length) {
let sum = sum + a[i];
let i = i + 1;
}
do Output.printString("THE AVERAGE IS: ");
do Output.printInt(sum / length);
do Output.println();
return;
}
}
mainT
-
class
Main
{
function
void
main
(
)
{
var
Array
a
;
var
int
length
;
var
int
i
,
sum
;
let
length
=
Keyboard
.
readInt
(
HOW MANY NUMBERS?
)
;
let
a
=
Array
.
new
(
length
)
;
let
i
=
0
;
while
(
i
<
length
)
{
let
a
[
i
]
=
Keyboard
.
readInt
(
ENTER THE NEXT NUMBER:
)
;
let
i
=
i
+
1
;
}
let
i
=
0
;
let
sum
=
0
;
while
(
i
<
length
)
{
let
sum
=
sum
+
a
[
i
]
;
let
i
=
i
+
1
;
}
do
Output
.
printString
(
THE AVERAGE IS:
)
;
do
Output
.
printInt
(
sum
/
length
)
;
do
Output
.
println
(
)
;
return
;
}
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started