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

  Base of the number system for this civilization

Many of the artifacts contain inscriptions that appear to be mathematical, and the first to be translated (with limited away-team gear) comes out as the equation

  In the context of network management how can the similar

question 1. in the context of network management how can the same manageability features contribute simultaneously to

  Consider an online reservation system for a restaurants

consider an online reservation system for a restaurants patrons. analyze the type of vulnerabilities and threats that

  Simple class definition and then provide the syntax

Provide a simple class definition and then provide the syntax and the rationale for declaring an array of objects of the class. Also explain the dimension of the array and why you chose that number of elements for the object array.

  Damaged lithium ion battery explodes

Jared Newman @onejarednewman  pdfcrowd.comopen in browser PRO version Are you a developer? Try out the HTML to PDF API Microsoft blends the old and new with Windows 10 Damaged Lithium Ion battery explodes

  Processes and procedural considerations for implementing

Following on from the previous assignment, the CIO was comfortable with what has been proposed by you in the first assignment and would like to see three key elements be investigated and reported further in this assignment.

  Customer relationship management (crm) system

All 3 assignments in this unit involve creating and building upon a Customer Relationship  Management (CRM) system for a nation-wide logistics company. In assignment 3 we aim to  link assignments 1 and 2 together in order to add a reb..

  Consumption of goods

Joe College is a UT student.  His course schedule is set and his parents have already paid for his tuition, room, and board for the semester. Now Joe must decide how to allocate his time between "leisure" (which includes study time, socializing, etc...

  Eu directive on the protection of personal data

How does the EU directive on the protection of personal data impose requirements on organizations in non-EU countries?"

  Security and ethical concerns in web-based tool

How could you use a wiki to collaborate with fellow students to improve this course? What security and ethical concerns would you have to consider if you implemented this classroom wiki?

  Virtual computing and/or cloud computing

Create your own Disaster Recovery and Business Continuity Plan. You need to be sure to include (in detail) how your plan will allow for the necessary Availability, Maintainability, Portability, and Reliability. You also need to address if your plan s..

  Speculate on the primary concerns of deploying ad rms

Speculate on the primary concerns of deploying AD RMS in a corporate environment. Recommend a strategy that you might use to mitigate these types of concerns during the initial implementation of the AD RMS. Provide a rational for your recommendation.

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