Question: Problem Description ( Java Programming): It is a well-researched fact that men in a restroom generally prefer to maximize their distance from already occupied stalls,

Problem Description ( Java Programming):

It is a well-researched fact that men in a restroom generally prefer to maximize their distance from already occupied stalls, by occupying the middle of the longest sequence of unoccupied places. For example, consider the situation where ten stalls are empty.

_ _ _ _ _ _ _ _ _ _

The first visitor will occupy a middle position:

_ _ _ _ _ X _ _ _ _

The next visitor will be in the middle of the empty area at the left.

_ _ X _ _ X _ _ _ _

Write a program that reads the number of stalls and then prints out diagrams in the format given above when the stalls become filled, one at a time. Hint: Use an array of boolean values to indicate whether a stall is occupied.

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

Make sure to test your algorithm by hand with the examples to verify it before continuing to Part 2.

Part 2: Implementation Phase

Using Eclipse or any other java programming software, 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.

Extra Credit (20 points maximum)

You will be awarded 10 additional points each for implementing the following methods, and using (calling) them in the program (main method):

printStalls(boolean[]) method outputs the given boolean array, such that _ is output if an array element is false and X is output if an array element is true

nextStall(boolean[]) int method calculates and returns the index in the middle of the longest run of false elements in the given boolean array s

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!