• 0

[Java] Arrays, HW, and more


Question

Hey everyone, its been quiite a while since I have posted at Neowin, however, I am in dire need of help with two beginning Java assignments. I have been behind in my class due to some lame personal reasons so im a bit lost. If anyone can help me with any of this it would be awesome :)

I apologize if this is viewed as "someone else doing my work," as I am merely only trying to better understand what needs to be done to complete the assignments.

The first assignement is to write a complete Java program in a source file to be named Assignment5.java. This file must hold class Assignment5 which has just one method: main.

The program simulates a compass. The program prompts the user for the following menu:

1. Turn North

2. Turn South

3. Turn West

4. Turn East

5. Quit

and based on the user choice prints ^ , V, < , or > respectively. Your program should continue with the menu until the user chooses to quit (choice number 5). You are required to use at least one switch statement in this program.

Sample Output: The user input is in brackets[ ]

1. Turn North

2. Turn South

3. Turn West

4. Turn East

5. Quit

Please select a command:[1]

^

1. Turn North

2. Turn South

3. Turn West

4. Turn East

5. Quit

Please select a command:[3]

<

1. Turn North

2. Turn South

3. Turn West

4. Turn East

5. Quit

Please select a command:[5]

Link to comment
https://www.neowin.net/forum/topic/597885-java-arrays-hw-and-more/
Share on other sites

3 answers to this question

Recommended Posts

  • 0

And now for the part where I have nooo clue where to start. :(

This assignment is to create a class called NumberCollection in a file called NumberCollection.java. (there is no main method in this class). A class NumberCollection has an array of integers and a count (integer) as instance variables. The variable count keeps track how many integers are store in the array. The variable name for the array of integers is numberArray.

Note: You need to distinguish the array size (capacity) and "count" that keeps track of numbers added to this array so far.

The class NumberCollection must include the following constructor and methods. (If your class does not contain any of the following methods, points will be deducted.)

Method

Description of the Method

public NumberCollection(int arraySize)

It constructs an empty NumberCollection object with an array capacity specified by the integer parameter "arraySize".

private int indexOf(int searchingNum)

It returns the index of the number specified by the parameter is located. If the number is not found, it returns -1. It is a service (helper) method.

public boolean addNumber(int numberToAdd)

The method checks if the integer specified by the parameter exists in the array (This can be done using the indexOf method to see if it returns -1 or not) and also checks if the array has not reached its capacity. If both are satisfied, the number is added to the array at the smallest available index. If the array reached its capacity, double its size by calling the method doubleArrayCapacity() and add the number. If the number is added successfully, then the method returns true. If the number already exists in the array, the new number will not be added, and the method returns false.

public boolean removeNumber(int numberToRemove)

The method checks if the integer specified by the parameter exists in the array (This can be done using the indexOf method to see if it returns -1 or not) and if it does, it moves the index stored in the last index (count-1) to where numberToRemove was found, and changes the content at the last index to 0 and return true. Otherwise, it returns false.

private void doubleArrayCapacity()

It is a service (helper) method and doubles the capacity of the numberArray. Please see the example in page 338, the method increaseSize() as a reference.

public int findMax()

It finds the maximum number among the numbers stored so far (at the time when this method is called), and returns it. If the array is empty, return 0.

public int findMin()

It finds the minimum number among the numbers stored so far (at the time when this method is called), and returns it. If the array is empty, return 0.

public int computeSum()

It computes and returns the sum of numbers stored in the numberArray so far (at the time when this method is called.) If the array is empty, return 0.

public String toString( )

Returns a String containing a list of numbers stored in the numberArray. An example of such string can be:

(3, 6, -1, 3, 23, -50, 43)

The string should start with a '(' and end with a ')'.

Save the NumberCollection class in a file called NumberCollection.java and use the following program stored in Assignment6.java, which has the main method to create new NumberCollection objects and to test your class.

The program will ask a user to enter a size for the array. Then it will show the following menu to a user:

Command Options

-----------------------------------

a: add an integer in the array

b: remove an integer from the array

c: display the array

d: compute and display the maximum

e: compute and display the minimum

f: compute and display the sum

?: display the menu again

Then it will ask a user to enter one of the above commands. Based on the user's choice, the program needs to perform corresponding operation. This will be done by using a method you defined in the NumberCollection class. The program will terminate when a user enters 'q'.

Any help, recommendations, or input is welcomed for both of these assignments.

Thanks everyone :)

  • 0

Start by creating the classes and by adding the required methods first.

(the methods dont have to do anything, just so you can get a picture of what your class looks like, better yet draw yourself some diagrams of the classes)

create a driver class that has a main, that will instigate/run your code.

you should post some code or attempt something before asking for help here.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • You are clueless. The updates are done in the background so the next time you open Edge the updates are applied automatically. There is no need to close all your tabs. Just keep browsing like you normally do. Clearly you don't use Edge and are just one of those haters that complain for the sake of complaining.
    • I don't get this David. Can you explain it please.  
    • Microsoft is busy. Lots of changes to be released imminently for Windows server or soon. Also, lots happening for next version as well. Third party virus scanning software is being moved out of Kernel mode to avoid repeat of Crowdstrike incident. Windows Protected Mode and Windows Ready Print no longer require third party print drivers to be installed. New storage stack being developed. New NVME drivers now available for Windows Server 2025 to improve local NVME drive performance by 60+ percent. NVME-Of of fabric being worked on for next release to improve network access to NVME drives. ReFs (next file system) now has ability to boot and will become default file system in next release of Windows Server. ReFs improves on NTFS in several areas including resiliency and reliability and scalability. New update stack is being worked on to unify Windows updates, and updates for drivers and first party/3rd party application software. A stricter and more robust third-party driver certification program (ODI) is being worked on to improve performance, thermals, battery life, and reliability on modern Windows hardware by tightening how OEMs and IHVs (Intel, AMD, Qualcomm, NVIDIA, etc.) build and ship drivers. There is a tone more but too numerous to mention.
    • Now disable that stupid OneDrive backup request when Windows starts please. So unbelievably frustrating to only have “remind me later” instead of “no and never ask me again”
    • Hello, The Media Creation Tool is still at v10.0.26100.7019 from October 2025. Just looks like the backend has been updated. Regards, Aryeh Goretsky
  • Recent Achievements

    • One Month Later
      Markus94287 earned a badge
      One Month Later
    • Week One Done
      Markus94287 earned a badge
      Week One Done
    • One Year In
      Markus94287 earned a badge
      One Year In
    • Dedicated
      truespursfan earned a badge
      Dedicated
    • Rookie
      restore went up a rank
      Rookie
  • Popular Contributors

    1. 1
      +primortal
      508
    2. 2
      +Edouard
      169
    3. 3
      PsYcHoKiLLa
      154
    4. 4
      ATLien_0
      90
    5. 5
      Steven P.
      79
  • Tell a friend

    Love Neowin? Tell a friend!