Question: Problem Description: Easter Sunday is the first Sunday after the first full moon of spring. To compute the date, you can use this algorithm, invented

Problem Description:

Easter Sunday is the first Sunday after the first full moon of spring. To compute the date, you can use this algorithm, invented by the mathematician Carl Friedrich Gauss in 1800:

1. Let y be the year (such as 1800 or 2001). 2. Divide y by 19 and call the remainder a. Ignore the quotient. 3. Divide y by 100 to get a quotient b and a remainder c. 4. Divide b by 4 to get a quotient d and a remainder e. 5. Divide 8 b + 13 by 25 to get a quotient g. Ignore the remainder. 6. Divide 19 a + b - d - g + 15 by 30 to get a remainder h. Ignore the quotient. 7. Divide c by 4 to get a quotient j and a remainder k. 8. Divide a + 11 h by 319 to get a quotient m. Ignore the remainder. 9. Divide 2 * e + 2 j - k - h + m + 32 by 7 to get a remainder r. Ignore the quotient. 10. Divide h - m + r + 90 by 25 to get a quotient n. Ignore the remainder. 11. Divide h - m + r + n + 19 by 32 to get a remainder p. Ignore the quotient.

Then Easter falls on day p of month n.

For example, if y is 2001:

a = 6 h = 18 n = 4 b = 20, c = 1 j = 0, k = 1 p = 15 d = 5, e = 0 m = 0 g = 6 r = 6

Therefore, in 2001, Easter Sunday fell on April 15. Write a program that prompts the user for a year and prints out the month and day of Easter Sunday.

Part 1: Problem-Solving Phase

Using the Design Recipe, write each of the following for this problem:

Contract

Purpose Statement

Examples, making sure to include counter-examples

Algorithm (based on the above algorithm, completed with input/output steps)

Make sure to test your algorithm by hand (see Chapter 2, Section 2.4 in Big Java: Late Objects) with the examples to verify it before continuing to Part 2.

Part 2: Implementation Phase

Using Eclipse, write the Java program for the algorithm formulated in Part 1, and test your program with the examples from Part 1.

Make sure to incorporate your Contract, Purpose Statement and Examples as one or more comment blocks, and your Algorithm as line comments in your Java source code.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!