1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
IrinaVladis [17]
4 years ago
7

In most programming languages, the compiler carries a preprocessing step to determine if certain statements will compile. For in

stance it may check to see if parentheses match.Write a Java program that simulates the actions of a preprocessor, to detect if certain Java constructs are syntactically correct. Table 1 shows the types of Java statement formats under consideration, and also example of each statement.
Computers and Technology
1 answer:
MakcuM [25]4 years ago
6 0

Answer:

See explaination for program code

Explanation:

package com.company;

import java.io.IOException;

import java.nio.file.Files;

import java.nio.file.Paths;

import java.util.Stack;

/*

* A program which reads input from given text filename and prints

* whether it passed the pre-processing stage or not

* Sample input

* int A = (a + b);static void display(int x)

* {

* //A sample input file

* }

* */

public class MyPreprocessor {

/*

* Reads input from filename and returns a string

* containing whole text

* */

public String readInput(String filename) {

String content = "";

try {

content = new String(Files.readAllBytes(Paths.get(filename)));

} catch (IOException e) {

e.printStackTrace();

}

return content;

}

/**

* Filters input since we are only concerned with

* a subset of input = '{}[]()/*'

*/

public String filterText(String text) {

String output = "";

for(int i = 0;i<text.length();++i) {

switch (text.charAt(i)) {

case '[':

case ']':

case '{':

case '}':

case '(':

case ')':

case '*':

case '/':

output += text.charAt(i);

}

}

return output;

}

/*

* Uses stack to determine if input is valid or not

* */

public boolean parse(String input) {

Stack<Character> St = new Stack<Character>();

// '$' is special symbol to represent bottom of stack

St.push('$');

for(int i = 0;i<input.length();++i) {

Character symbol = input.charAt(i);

if(St.peek().equals(getOpenSymbol(symbol)))

St.pop();

else St.push(symbol);

}

return St.peek() == '$';

}

private static Character getOpenSymbol(Character symbol) {

switch (symbol) {

case '}': return '{';

case ']': return '[';

case ')': return '(';

case '*': return '*';

case '/': return '/';

default: return ' ';

}

}

public static void main(String[] args) {

MyPreprocessor preprocessor = new MyPreprocessor();

String inputText = preprocessor.readInput("src/input.txt");

String filteredInput = preprocessor.filterText(inputText);

if(preprocessor.parse(filteredInput))

System.out.println("preprocessing passed.");

else System.out.println("preprocessing failed!");

}

}

You might be interested in
Which type of error is a random error
zlopas [31]

Answer:

statistical fluctuations

Explanation:

8 0
3 years ago
Read 2 more answers
Under what circumstances are composite primary keys appropriate?
guajiro [1.7K]
A composite primary key<span> is a set of several primary </span>keys<span> that, together, uniquely identifies each record.</span>
Primary keys are used as identifiers of composite entities. In this case each primary key combination is allowed only once in the *:* relationship.
Other case where primary keys are used is as identifiers of weak entities, where the weak entity has a strong identifying relationship with the parent entity. 
8 0
4 years ago
Using complete sentences post a detailed response to the following.
laiz [17]

Answer:

some advantages of top down is that you can start off from what you know and figure out what you need to complete it, advantages to bottom up is that you can make something new . if you are starting something from scratch and you dont know what the end goal might be you would use bottom up but if you already have an idea or the final product of what you want you would go the top down approach.

Explanation: just saying you shouldnt just copy and paste my response but rather pick out what you want to say and use this to complete what ever your working on. hope i helped :)

6 0
3 years ago
Read 2 more answers
Which is NOT an example of a "Serious Game"?
Allisa [31]

Answer:

My answer to the question is Sport Activity

4 0
3 years ago
I have been working on this python program for a hour now, and I am trying to figure out what I an doing wrong in the loop. I ha
Alona [7]

Answer:

The correct loop is as follows:

for year in range(starting_tuitionYear, ending_tuitionYear, increment):

   tuition = startingTuition + rate * startingTuition

   startingTuition = tuition

   print('Tuition for the year of ' + str(year)+ ' is ' + str(tuition));

Explanation:

Required

The correction to the attached program

Some variables are not needed; so, I've removed the redundant variables.

The main error in the program is in the loop;

After the tuition for each year has been calculated, the startTuition of the next year must be set to the current tuition

<em>See attachment for complete program</em>

7 0
3 years ago
Other questions:
  • What is the property of the Magnetic Lasso tool?
    6·2 answers
  • Why is the answer A?
    6·1 answer
  • Often used in connection with a business
    6·1 answer
  • True or False. A compact disc (CD) stores music in a coded pattern of tiny pits 10−7m deep. The pits are arranged in a track tha
    9·1 answer
  • What is information technology
    11·1 answer
  • Select the correct answer.
    10·1 answer
  • Credence is a student in college.
    13·2 answers
  • There are many best practices for digital recordings. Select the three best practices from the list below. select the best micro
    14·1 answer
  • High-level languages must be translated into machine language before they can be executed. _________________________
    10·1 answer
  • Tasha grew up helping her uncle work on cars in his auto repair shop and developed into an excellent auto technician. Because of
    14·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!