Learning when and how to use a while loop, Programming Languages

Assignment Help:

1.  A function that produces the Collatz sequence and counts the number of terms.

2.  A main function that calculates interesting values about the Collatz sequence.

1.The Collatz Sequence

1. The rules for the Collatz Sequence are pretty straight forward:

3.  Start with an integer n > 1.

4.  Given a current term n, if n is even, the next term is n=2, if it is odd, the next term is 3n + 1.

5. Repeat until the last term is 1.

For examples: starting with n = 3, we get the sequence 3, 10, 5, 16, 8, 4, 2, 1.

2. It is an open question as to whether or not the sequence always returns to one for every starting value.

2. To Do and Turn In

1. The end result will be a .m file containing the main function, the Collatz function, and possibly other supporting functions.

2. The Collatz function should have one input and one output, the input is the starting number n, and the output is the number of terms in the sequence (the Collatz length), including the last term of 1. So in the example above for n = 3, the Collatz length is 8.

3. As usual, the main function will be in charge. It should be in charge of getting all the results calculated and in printing the results.

4. There are 3 results you need to produce:

(a) The Collatz length for n = 2; 3; . . .; 20 in a nice table (of course!).

(b) The first integer n for which the Collatz length is greater than 500. Display the integer and it's Collatz length.

(c) The integer n between 1 and 100 (inclusive) with the largest value for the ratio of it's Collatz length to itself. Display the integer, it's Collatz length and the ratio.

5. You'll need to figure out what kind of loop you need to use in each case.

6. As before you can have the main function do all the work (except for what the Collatz function does), or you can have subfunctions that do all or part of the work. The main function should, in any case, be totally responsible for displaying all the results.

7. When you are done, comment it well and publish the results as a PDF. Submit the PDF.


Related Discussions:- Learning when and how to use a while loop

Application in pascal language for free pascal compiler , Before I describ...

Before I describe what you are supposed to do, please remember that this programming assignment is NOT a group project. You are NOT allowed to do this with anyone else's help. This

Implement a lunar lander simulation, 1. Modify your solution to #8 so that ...

1. Modify your solution to #8 so that if an ellipse is touched by the mouse, it turns permanently green.Bonus (up to +5): a green ellipse stops moving, but recovers after 5 seconds

Python (using os.walk), Using os.walk, write a script that will print the f...

Using os.walk, write a script that will print the filenames of zero length files. It should also print the count of zero length files.

Type of linear programming - dea, Type of Linear Programming - DEA The ...

Type of Linear Programming - DEA The Express Dry Cleaners currently has four locations in the Chicago area and willing be opening the fifth in the very near future.  Mr. James,

How would you install a multiple layered security product, Problem: (i)...

Problem: (i) All Security authentication mechanism that run on the TRU64 Unix Operating system run under the Security Integration Architecture ( SIA ) layer. Explain with diag

Shell script toconvert all lowercase to uppercase characters, Normal 0 ...

Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4

Explain the comma operator- computer programming, Explain the Comma Operato...

Explain the Comma Operator- Computer Programming? The comma has two utilization and the most common use is as a parameter separator for data types and function parameter lists. H

Visual Basic 2010 Karate Payments MDI Application, The following are requir...

The following are required for this lesson: Complete the Project "Adding New Payments," which is the Karate Payments that includes the Adding New Payments, Deleting Payments,

Calculate the appropriate weight for each query term, 1-Create ir3.py based...

1-Create ir3.py based on ir2.py 2-Repeatedly prompt the user for a query (if they enter "q", then quit) 3-Find the terms in the query, and calculate the appropriate weight fo

Java applet, Expertsmind brings you unique solution in java assignments ...

Expertsmind brings you unique solution in java assignments Applet In processing, and the apple company is any little application that works one specific process that works

Write Your Message!

Captcha
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