The arraylist class

Assignment Help Basic Computer Science
Reference no: EM131035635

Programming Assignment

"The ArrayList Class"

I. The Term Class

Create a class to represent a term in an algebraic expression. As defined here, a term consists of an integer coefficient and a nonnegative integer exponent.  E.g.

  • in the term 4x2, the coefficient is 4 and the exponent 2
  • in -6x8, the coefficient is -6 and the exponent 8

Your Term class will have a constructor that creates a Term object with a coefficient and exponent passed as parameters, accessor methods that return the coefficient and the exponent. Your class will also have a toString() method that returns a Term object as a String, formatted as shown in these examples:

Coefficient         Exponent      returns

     5                 3          5x^3

     8                 1          8x

     4                 0          4

II. The Polynomial Class

Now create a class to represent a polynomial.  As defined here, a polynomial is a sequence of terms.  E.g.

1. 3x2  +  4x4  +  x6

2. 2  +  5x2  +  6x3  +  2x7

3. 4x10

The terms of polynomial 1 are (3,2), (4,4) and (1,6). The terms of polynomial 2 are (2,0), (5,2), (6,3) and (2,7). Polynomial 3 has only one term (4,10)

To receive credit for this assignment, your class must use a generic "ArrayList of Term" to store the terms of a Polynomial object

Your class will have a constructor that creates an empty list and additional methods to do each of the following:

1. insert a new term in its proper place in a polynomial (see "Additional Specifications," below)

2. return all the terms of a polynomial as a single line string, as shown here:

3x^2 + 4x^4 + x^6

Hint: for each Term in the Polynomial, call the toString() method of the Term class and concatenate       

3. delete a term from a polynomial (see "Additional Specifications," below)

4. compute and return the product of all the terms of a polynomial

5. reverse the order of the terms in a polynomial (see "Additional Specifications," below)

III.  The Test Class

The main method of your test class will create a Polynomial object and then read and process a series of operations until end of file.

The operations are:

1. INSERT X Y

Insert a new term with coefficient X and exponent Y into its proper place in the polynomial

2. DELETE X Y 

Remove the term with coefficient X and exponent Y from the polynomial

3. REVERSE 

Reverse the order of the terms of the polynomial

4. PRODUCT

Compute and return the product of all the terms

F Each operation is to be carried out by calling a method of the Polynomial class

F Each operation read must be "echo printed" to the screen

F After each operation, print the updated polynomial by calling the toString() method

F For the PRODUCT operation, print the string returned

IV. Additional Specifications

1. All instance variables must be private

2. The skeleton of the Polynomial class you are to use is online. No credit will be given if the method declarations are changed in any way

3. The operations are to be read from a data file which I will provide

4. You may assume correct input

5. Also assume that no insertions will be made into a reversed polynomial. (But you might want to think about how this could be accomplished)

6. Regarding the delete() method: if the specified term does not occur in the polynomial then print an appropriate message

7. Regarding the reverse() method: you must write your own algorithm to reverse the order of the elements of an ArrayList. No credit will be given for calling the reverse method of Java's Collections class or any other method. No credit will be given for merely printing the terms in reverse order.

(Hint: You may want to use a temporary ArrayList to create the reversed list)

8. Regarding the insert() method: The terms of a polynomial are to be inserted in ascending order by exponent. There will never be a need to "sort" the list. Multiple terms with the same exponent may appear in any order, but will appear after all terms with a lesser exponent and before all terms with a greater exponent

An algorithm to insert a term in its proper place in an ordered list will be discussed in class

9. For maximum credit, make sure your classes adhere to all the style and documentation standards presented in Unit 6 and discussed in class. (Note that the Javadoc comments for the Polynomial class have already been done)

Attachment:- operations.txt

Attachment:- Polynomial.java

Reference no: EM131035635

Questions Cloud

Recursive function to print the arrangements : Warm-up Assignment You are given R red marbles and B blue marbles. Your task is to arrange the R + B marbles in a line such that certain restrictions are satisfied (see below).
Inventory management for special units at business : You have just taken over inventory management for special units at a business. Currently there are 120 units in stock, it takes between 1 and 3 weeks to receive an order of 100 new units, and demand runs between 0 and 25units per week. What additiona..
What does the income per billing percentage calculated : Question - Based on your work in (2) above: (a) Would you recommend the adoption of ABC? Explain your answer. (b) What does the ‘income per billing' percentage calculated under the ABC approach tell you about these three accounting services
Operating leverage and break-even analysis : OPERATING LEVERAGE AND BREAK-EVEN ANALYSIS Olinde Electronics Inc. produces stereo components that sell at P = $100 per unit. Olinde's fixed costs are $200,000, variable costs are $50 per unit, 5,000 components are produced and sold each year, EBI..
The arraylist class : Create a class to represent a term in an algebraic expression. As defined here, a term consists of an integer coefficient and a nonnegative integer exponent.  E.g.
Charge of developing system to perform high-volume : You are in charge of developing a system to perform high-volume, repetitive processing of HMO group health insurance claims. Each claim must undergo 4 separate processing steps. Step 1 takes on average 85 seconds to complete. Step 2 takes on average ..
Calculate the break-even point in pizzas per month : Calculate the break-even point in pizzas per month and print your results using the online break-even analysis tools - Calculate the break-even point in pizzas per month and print your results using the break-even chart analysis spreadsheet.
What is meant by an external entity in a process model : Define what is meant by an external entity in a process model. How should an external entity
Constraints typically found when designing selection program : What might happen with regard to turnover if staffing is not linked to the organization's strategy? In your view, are all elements of the design needed? What are the various constraints typically found when designing the selection program? How can th..

Reviews

Write a Review

Basic Computer Science Questions & Answers

  How recursion breaks up complex computational problems

Discuss how recursion breaks up complex computational problems into simpler ones. Identify three problems that would be difficult to solve without the use of recursion. Justify your response in simple C++ syntax.

  Develop a model that can be described

Develop a model that can be described in yes/no (boolean) terms. Use boolean algebra, truth tables, or logic gates to describe this model. Attach a diagram or drawing to explain your concept.

  Create a matrix to indicate the permissions

Create a matrix to indicate the permissions (read, insert, delete, modify) you would grant to different users of your database.Create at least two different users and implement their permissions using SQL statements.

  Write a procedure homming

Submit your programs by email. The program should have as many comments as necessary. The top comments should explain how to run and test the program. If any two assignments have the same code, zero marks will be assigned to the assignments.

  Explain how has science enhanced quality of life

Explain typical day in your life from time you wake up, until time you go to bed. Explain how science influences you and your routine throughout the day.

  Article in the ny times

Read the following article in the NY Times. Defeat your opponent and hires. Need the following questions answer. What does this mean in terms of organizational behavior? How do you implement? Is this an ethical practice? How would this an ethical pra..

  Optimum scheduling period

A producer has to supply 12,000 units of a product per year to his customer. The demand is fixed and known and backlogs are not allowed. The inventory holding cost is Rs.0.20 per unit per month and the set up cost per run is Rs. 350/- per run.

  Create three arrays of int with the same size

A company has 10 stores. Input the annual sales for each store. Find the store with the maximum sales, the one with the minimum sales, and find the average annual sales for the 10 stores. Print the maximum, minimum sales and their store index, and..

  Determine smallest value of x for which is safe state

System has 4 processes and 5 allocatable resources. The current allocation and maximum needs are as follows: Determine the smallest value of x for which this safe state.

  What is the difference between present tense

What is the difference between present tense and past tense verbs?

  Find a successive pair of elements

Consider the obvious algorithm for checking whether a list of integers is sorted: start at the beginning of the list, and scan along until we first find a successive pair of elements that is out of order. In that case, return false. If no such pai..

  What is required to apply it into business

Does business need IT? Why IT is important for business survival? What is required to apply IT into business? (Cost, planning, designing, equipment, installation, training, etc) How does business use IT? (internally such as staff, employees, and exte..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd