Reference no: EM13700793
Question: Specify, design, and implement a class that can be used in a program that simulates a combination lock.
The lock has a circular knob with the numbers 0 through 39 marked on the edge, and it has a three-number combination, which we will call x,y,z.
In order to open the lock, you must turn the knob clockwise at least one entire revolution, stopping with x at the top; then you turn the knob counterclockwise, stopping the "second" time that y appears at the top; finally, you turn the knob clockwise again, stopping the next time that z appears at the top. At this point, you may open the lock.
Your "Lock" class should have a constructor that initializes the 3-number combination (use 0,0,0 for default arguments in defaut constructor)
Also, provide the subsequent methods:
Part 1: To alter the lock's combination to a new 3-number combination
Part 2: To turn the knob in a given direction until a specified number appears at the top. (You also must show all of the numbers in the output as the lock is being turned - could use a for loop)
Part 3: To close the lock
Part 4: To attempt to open the lock
Part 5: To inquire about the status of the lock (open or closed)
Part 6: To tell what number is currently at the top.
Write a demo program that uses all of the above methods.
You need to prepare a demo program that implements all of the above methods.