Compute the term of the sequence

Assignment Help Computer Engineering
Reference no: EM131734730

Project Assignment

This programming project involves writing a program to calculate the terms of the following sequence of numbers: 0 1 2 5 12 29 ... where each term of the sequence is twice the previous term plus the second previous term. The 0th term of the sequence is 0 and the 1st term of the sequence is 1.

For example:

0 1 2 -> (0 + 1 + 2) + 2 = 5
0 1 2 5 -> (0 + 1 + 2 + 5) + 5 = 12
0 1 2 5 12 -> (0 + 1 + 2 + 5 + 12) + 12 = 29

...

The interface to the program should be a GUI that looks similar to the following:

1258_GUI.jpg

The pair of radio buttons allows the user to choose whether an iterative or recursive method is used to compute the term of the sequence. When the user enters a value for n and then clicks the Compute button, the nth term of the sequence should be displayed in the Result field. The Efficiency field should contain the number of calls to the recursive method when the recursive option is chosen and the number of iterations of the loop when the iterative option is selected.

The Iterative radio button should be initially set to selected.

When the window is closed, the efficiency values should be computed with values of n from 0 to 10 and written to a file. Each line of the file should contain the value of n, the efficiency of the iterative method for that value of n and the efficiency of the recursive method. The values should be separated by commas so the file can be opened with Excel and used to graph the value of the efficiencies for both the iterative and recursive options along the y axis with the value of n along the x-axis. The graph should be included in the Word document that accompanies this project and should also contain a brief explanation of the observed results.

The program should consist of two classes.

1. The first class should define the GUI. In addition to the main method and a constructor to build the GUI, an event handler will be needed to handle the Compute button click and another handler will be needed to produce the file described above when the window is closed. The latter handler should be an object of an inner class that extends the WindowAdapter class.

2. The other class should be named Sequence. It should be a utility class meaning that all its methods must be class (static) methods and no objects should be able to be generated for that class. It should contain three public methods:

a. The first method computeIterative should accept a value of n and return the corresponding element in the sequence using iteration.

b. The second method computeRecursive should accept a value of n and return the corresponding element in the sequence using recursion. This method will be a helper method because it will need to initialize the efficiency counter before calling the private recursive method that will actually perform the recursive computation.

c. The third method getEfficiency will return the efficiency counter left behind by the previous call to either of the above two methods.

The google recommended Java style guide, provided as link in the week 2 content, should be used to format and document your code. Specifically, the following style guide attributes should be addressed:

• Header comments include filename, author, date and brief purpose of the program.

• In-line comments used to describe major functionality of the code.

• Meaningful variable names and prompts applied.

• Class names are written in UpperCamelCase.

• Variable names are written in lowerCamelCase.

• Constant names are in written in All Capitals.

• Braces use K&R style.

In addition the following design constraints should be followed:

• Declare all instance variables private
• Avoid the duplication of code

Test cases should be supplied in the form of table with columns indicating the input values, expected output, actual output and if the test case passed or failed. This table should contain 4 columns with appropriate labels and a row for each test case. Note that the actual output should be the actual results you receive when running your program and applying the input for the test record. Be sure to select enough different scenarios to completely test the program.

Note: All code should compile and run without issue.

Reference no: EM131734730

Questions Cloud

Determine the optimal price to maximize revenue : Determine the optimal price to maximize revenue. What is the optimal price? What is the optimal revenue? What is the revenue, as a function of the two prices?
Design and construct an indoor landscape : Design and construct an indoor landscape for a new sports ground in Muscat - design a conference hall and range of summer house for a famous Hotel in Muscat
Determine the size of the prepayment penalty : Consider the situation in part (b). Determine the size of the prepayment penalty ($ amount) that would have ensured that you earned a yield (or IRR) of 7.25%.
Discuss branding and packaging strategies : Analyze the effectiveness of these strategies and compare to two similar products
Compute the term of the sequence : The pair of radio buttons allows the user to choose whether an iterative or recursive method is used to compute the term of the sequence.
Different types of primary research : Define primary research and discuss the advantages and disadvantages of the different types of primary research.
Comparison of olb and market value approach : Five years ago, you took out a $120,000, 30-year mortgage at 9% interest, with no prepayment penalty. Today you can get a 25-year mortgage at 7% with 2 points.
What potential audit procedures could the team consider : What potential audit procedures could the team consider to evaluate management's revenue recognition policies
Determining the investment alternatives : Consider the following 10 year investment alternatives: the first investment project will provide you with a $50,000 cash flow each year for the next five years

Reviews

Write a Review

Computer Engineering Questions & Answers

  Discuss briefly your password policy requirements

Provide a word document that briefly describes your password policy requirements

  What is the defining feature of the decision tree

What is the defining feature of the decision tree and Which features seem to be redundant - Does the classification accuracy increase or decrease

  How many signal wires are need in direction for operation

How many signal wires are needed in each direction for 16x operation? What is the gross capacity each way? What is the net capacity each way?

  Write down a simple java payroll code

Write down a simple Java payroll code. It needs to ask for the employee name, hours worked, and hourly rate.

  Describe the ideal online tool set

The first editing pass must be completed in three days. Describe the ideal online tool set that would enable you to collaborate effectively.

  Calculate the overall sentiment value for each topic

CS 2034 Data Analytics: Principles and Tools - Determine the total number of Positive, Negative, and Neutral Tweets in the dataset

  This is a term long project and has 4 phases in phase 4

you have been hired as cio for a small independent auto-parts store - northwest georgia auto parts. the store has

  Write at least one-page synopsis of the rfid technology

Make sure in the paper write at least one-page synopsis of the RFID technology ethical issue topic

  Explain the human-interface design considerations

Explain the human-interface design considerations. Explain the steps for developing test cases and describe how they help the overall project.

  Prove that binary search over a sorted array of n elements

Prove that binary search over a sorted array of N elements operates in logarithmic time. (i.e. O(log2(N))

  Why is it stated that electronic commerce is a catalyst of

why is it said that electronic commerce is a catalyst of fundamental changes in organizations? search the ashford

  How would you propose the update to star topology

How would you propose the update to Star topology

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