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

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

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