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'll call x, y, z. To open the lock, you must turn the knob clockwise at least one entire revolution, stopping with x at the top: then turn the knob counterclockwise, stopping the second time that y appears at the top: finally 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 three-number combination (use 0, 0, 0 for default arguments). Also provide member functions:
(a) to alter the lock's combination to a new three number combination
(b) to turn the knob in a given direction until a specified number appears at the top
(c) to close the lock
(d) to attempt to open the lock
(e) to inquire about the status of the lock (open or shut)
(f) to tell you what number is currently at the top