Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Hey guys, I just need some help with this java code. This is my first time using lambda expression, and honestly i just need to

Hey guys,

I just need some help with this java code. This is my first time using lambda expression, and honestly i just need to be pointed at the right direction. This is for a java course.

Here the assignment with the couple of test class.

Assignment:

Concepts

Stacks

Queues

Linked List

Programming Problems

Stack - Implementation. You will be able to use the push, pop and peek of Stack concept.

Post-Fix calculator - When an arithmetic expression is presented in the postfix form, you can use a stack to evaluate the expression to get the final value. For example: the expression 3 + 5 * 9 (which is in the usual infix form) can be written as 3 5 9 * + in the postfix. More interestingly, post form removes all parentheses and thus all implicit precedence rules.

Program Implementation Requirements

Use the stack concept to create a post-fix calculator. I will be using a test-harness to run your program. Please make sure it meets the requirements to be run by the test harness.

LinkedList/Queue - Implementation.

New concert tickets are available. You have to enter the names of the people in order to form a line. However, you will later find out that a few people are not eligible to buy tickets because they represent scalpers instead of actual concert goers. You will have to remove those people from the line. A special raffle will be done and the result of the raffle will insert a person to the front of the line. You will have to issue tickets to the first 10 people in line, but there are 15 people total in line. The others will have to put into a waitlist queue for the next available ticket.

Program Implementation Requirements

Use the Linked List (Original Line) and a Queue (waitlist) concept to create this program. The class name will be ConcertTickets. You will have the following methods: insertIntoLine(Person p), removeFromLine(Person p), addToWaitList(Person p), assignedTicket().

test-harness.

Test class:

StackCalcTest.java

public class StackCalcTest {

public static void main(String[] args) {

StackCalc stackCalc = new StackCalc();

String[] values = {"3", "5", "9", "*", "+"};

for(int i = 0; i < 5; i++) {

stackCalc.stack.push(values[i]);

}

System.out.println(stackCalc.stack);

System.out.println(stackCalc.answer());

}

}

ConcertTicketsTest.java

import java.util.ArrayList;

public class ConcertTicketsTest {

public static void main(String[] args) {

ArrayList listOfPeople = new ArrayList();

listOfPeople.add("Monica");

listOfPeople.add("Chandler");

listOfPeople.add("Rachel");

listOfPeople.add("Phobe");

listOfPeople.add("Joey");

listOfPeople.add("Ross");

listOfPeople.add("John");

listOfPeople.add("Daenerys");

listOfPeople.add("Arya");

listOfPeople.add("Sansa");

listOfPeople.add("Rob");

listOfPeople.add("Ned");

ConcertTickets concertTickets = new ConcertTickets(listOfPeople);

concertTickets.removeFromLine("Ned");

concertTickets.removeFromLine("Ross");

concertTickets.insertInFront("Cersei");

System.out.println(concertTickets.printWaitlist());

System.out.println(concertTickets.listOfTicketHolders());

}

}

Here what I did so far:

mport java.util.Stack;

public class StackCalc{

Stack stack = null;

StackCalc(){

stack = new Stack();

}

public double answer() {

Stack temp = new Stack();

String s = "";

while(!stack.isEmpty()) {

String k = stack.peek();

s = s + k;

temp.push(k);

stack.pop();

}

Stack postfix = new Stack();

for (int i = s.length()-1; i>=0; i--) {

char c = s.charAt(i);

if (Character.isDigit(c))

postfix.push((double) (c - '0'));

else {

double val1 = postfix.peek();

postfix.pop();

double val2 = postfix.peek();

postfix.pop();

switch (c) {

case '+':

postfix.push(val2 + val1);

break;

case '-':

postfix.push(val2 - val1);

break;

case '/':

postfix.push(val2 / val1);

break;

case '*':

postfix.push(val2 * val1);

break;

}

}

}

return postfix.peek();

}

}

I don't know where to go from here. Please help.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Advanced Database Systems

Authors: Carlo Zaniolo, Stefano Ceri, Christos Faloutsos, Richard T. Snodgrass, V.S. Subrahmanian, Roberto Zicari

1st Edition

155860443X, 978-1558604438

More Books

Students also viewed these Databases questions